我寫了一個結構是這樣的...在C++ 11結構構造函數名的優先
struct StackOverflow
{
int x;
StackOverflow(){}
StackOverflow(int x) { x = x; }
};
我知道我應該寫後者構造函數StackOverflow(int x) : x(x) {}
但我很高興,我在此沒有案例,因爲我學到了一些東西:
C++ 11編譯器沒有做正確的事與語句{x = x;}
。逸岸,結構體成員x
甚至沒有初始化(它有隨機值,當我調試爲什麼我申請失敗)。我沒有收到編譯器警告。
不應該有這樣的工作?
看起來像一個'this'丟失。 – Hogan
編譯器絕對_did權thing_。但是,你沒有。 –