C++学习

  C++博客 :: 首页 :: 联系 :: 聚合  :: 管理
  1 Posts :: 0 Stories :: 0 Comments :: 0 Trackbacks

常用链接

留言簿

我参与的团队

搜索

  •  

最新评论

2009年6月5日 #

今天在重看C++ primier3rd 时候,无意中看到typedef这节,发现有一个以前没注意的地方。
typedef char *CString;
//下面这一句代表的意思与我想的不同
extern const CString cstr;

按照我的思路这应该是一个指向字符常量的指针,书上给的解释是这是一个指向字符的指针常量。


void main(void)
{
    typedef 
char *CString;
    
const CString cstr;
}


结果:
main.cpp(
6) : error C2734: 'cstr' : const object must be initialized if not extern
main.cpp(
8) : error C2086: 'cstr' : redefinition


也就是说,cstr为一个常量,必须要初始化,否则无法编译。

posted @ 2009-06-05 10:59 vuleetu 阅读(170) | 评论 (0)编辑 收藏