7
這段代碼被刊登在http://accu.org/index.php/cvujournal,公佈7月2013年 我無法理解的輸出,任何的解釋是helphful以下代碼的輸出是什麼?
#include <iostream>
int x;
struct i
{
i() {
x = 0;
std::cout << "--C1\n";
}
i(int i) {
x = i;
std::cout << "--C2\n";
}
};
class l
{
public:
l(int i) : x(i) {}
void load() {
i(x);
}
private:
int x;
};
int main()
{
l l(42);
l.load();
std::cout << x << std::endl;
}
輸出:
--C1
0
我期待:
--C2
42
任何解釋?
'void load(){i y(x); }'輸出你所期望的。 – Derek
或者更簡單地說,'我{x};' – chris
@chris只適用於C++ 11,對吧? – Derek