struct BLA
{
int size_;
int size()const{ return size_; }
}
int x;
BLA b[ 2 ];
BLA * p = &b[ 0 ];
b[ 0 ].size_ = 4;
b[ 1 ].size_ = 6;
Run Code Online (Sandbox Code Playgroud)
当我编译这一行时:
x = p->size_ + (p++)->size_;
Run Code Online (Sandbox Code Playgroud)
我收到了预期的结果.但是,当我编译这行时(没有前一行):
x = p->size() + (p++)->size();
Run Code Online (Sandbox Code Playgroud)
然后我得到不同的结果.'p'不会与上一行同时增加.有人可以解释一下吗?试过VS 2008和VS 2010.