What is the difference between typedef and # define in C++
Editor to share with you what are the differences between typedef and # define in C++, I believe most people do not know much about it, so share this article for your reference, I hope you will learn a lot after reading this article, let's go to know it!
1. Differences in implementation
The keyword typedef is valid in the compile phase, and since it is in the compile phase, typedef has the function of type checking.
# define, on the other hand, is a macro definition that occurs during the preprocessing phase, that is, before compilation, with simple and mechanical string substitution without any checking.
For example, typedef will do the corresponding type checking.
Typedef unsigned int UINT; void func () {UINT value = "abc"; / / error C2440: 'initializing': cannot convert from' const char [4]'to 'UINT', compiles without passing cout