Dan Saks


Dan Saks is the President of Saks & Associates, which offers training and consulting in C and C++ and their use in developing embedded systems. He has been a columnist for numerous publications, including The C/C++ Users Journal, The C++ Report, Embedded Systems Design, embedded.com and several other publications. Dan served as the first secretary of the C++ Standards Committee and contributed to the CERT Secure Coding Standards for C and C++.



Choosing the Right Integer Types in C and C++ (2018)

C and C++ provide an assortment of signed and unsigned integer types of various sizes. They give programmers a great deal of control over the speed and space efficiency of their programs. However, the variations in the integer types have turned out to be a major source of portability headaches and other frustrations. C and C++ offer an extended set of integer types that alleviate many of these problems. Unfortunately, many programmers don't seem to know how to use these types, or even that they are there. This talk explains many of these extended integer types and how you can use them to write better code.


East const but constexpr West (2018)

C++ syntax leaves programmers with some discretion about where to place the keywords const and constexpr in declarations.

As an "East const" advocate, I place const to the right of the type that it modifies. I encourage others to do the same.

Despite the similarities between const and constexpr, I do not recommend "East constexpr". I'll show you some insightful things about C++ declarations to explain why this makes sense.