简单的问题()和->的优先顺序
((Mac *)ifqueuelist[0]->target())->addr()
这一句,是将ifqueuelist转化为mac类对象,还是将target函数的返回值转化为mac对象
谢谢各位大虾,最好能再详细讲讲
[解决办法]
首先调用:
ifqueuelist[0]->target()
然后把返回值强制类型转换为(Mac *)
然后再调用addr()函数...
[解决办法]
((Mac *)ifqueuelist[0]->target())->addr()
#define (Mac *)ifqueuelist[0]->target() pt
then ((Mac *)ifqueuelist[0]->target())->addr() is equal to
pt->addr()
[解决办法]
[解决办法]
同意
[解决办法]
[解决办法]
ifqueuelist[0]->target() 转换为 Mac* 再引用addr()
[解决办法]
不知道。但:
一、不要使用旧式的强制转换符。使用static_cast,这样就不会有这个问题了。
二、记不住的时候用括号。