首先,样本的代码:C++常量指针的typedef解释
情况1:
typedef char* CHARS;
typedef CHARS const CPTR; // constant pointer to chars
以文本替换煤焦变为:
typedef char* const CPTR; // still a constant pointer to chars
情况2:
typedef char* CHARS;
typedef const CHARS CPTR; // constant pointer to chars
在文本上取代CHARS变为:
typedef const char* CPTR; // pointer to constant chars
在情况2中,在文本替换CHARS之后,typedef的含义发生了变化。这是为什么? C++如何解释这个定义?
一般来说,typedef指针(隐藏星号)是一个坏主意,正因为const不能插入指向类型和星号之间。 – Tronic 2010-02-12 17:44:04
http://stackoverflow.com/questions/1808471/is-const-lpvoid-equivalent-to-void-const/1808665的重复排序 – 2010-02-12 18:57:49