【发布时间】:2018-10-29 20:06:17
【问题描述】:
您好,谁能在下一个代码中解释 b=16(对象 'o' 字段 b 的值):
class T{
int a=5;
int b=++a;
int c=++b;
public:
T(int p): a(p++), b(a*p){b+=a+c;}
};
int main(){
T o(2);
return 0;
}
【问题讨论】:
-
发布的代码无法编译。
-
这将有助于逐步完成并发布您认为在每个步骤中发生的事情。然后,答案可以准确地告诉您哪一步与您的期望不同。
-
@NeilButterworth 在修正了琐碎的错字后,it does。
-
@user463035818 人们总是用这样的例子来讨论语言的怪癖。如果您认为没有意义,请自己保留。
-
这段代码是你自己写的吗?它的目的是什么?
标签: c++ class object constructor field