C++ typedef语法规则

Dav*_*idS 3 c++

对于我的生活,我无法找到用于将typedef转换为C++语句的规则的良好解释.我理解的简单案例.但请考虑丹尼卡勒夫的这个:

typedef char * pstr;
int mystrcmp(const pstr, const pstr); //wrong!
Run Code Online (Sandbox Code Playgroud)

Danny Kalev然后写道:

序列const pstr实际上意味着char*const(一个指向char的const指针); 不是const char*(指向const char的指针.

我找不到任何规则来解释为什么"const pstr"会被转换为"char*const".

谢谢你的帮助.

Pau*_*nta 5

这是因为它pstr是一个别名char*,当你这样做const pstr有点像说const (char*)而不是(const char)*.