专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > C++

data member 指针的有关问题

发布时间:2011-06-28 21:42:13 文章来源:www.iduyao.cn 采编人员:星星草
data member 指针的问题
深度探索c++对象模型
class   A
{
public:
int   m;
int   n;
};

int   main()
{
        A   a;
        printf( "%d,%d ",&A::m-1,&A::n);
}

编译有错误:
error   C2296:   '- '   :   illegal,   left   operand   has   type   'int   A::* '

我用的是vc6.0,   用g++也是如此。

但书上明明有这样的例子啊。p98.

------解决方案--------------------
成员指针只能赋值,不能加减,可以用 union_cast 来转成 int
------解决方案--------------------
指向成员的指针,只能转换成bool,这是C++标准规定的,没啥讨价还价的余地。不要钻牛角尖。
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: