看來我們不能在C++中給出struct成員的默認值,但是我發現下面的代碼可以編譯和運行,爲什麼?我錯過了什麼嗎?C++中struct成員的缺省值
struct Type {
int i = 0xffff;
};
計劃:
#include <iostream>
using namespace std;
struct Type {
int i = 0xffff;
};
int main() {
// your code goes here
Type val;
std::cout << val.i << std::endl;
return 0;
}
你的編譯器是否支持C++ 11標準? –
這種類型的初始化被添加到C++ 11中。這意味着我們可以在一個地方初始化,而不是在每個構造器中初始化。 – Ben
@tmp是的,請點擊上面的超鏈接。 – prehistoricpenguin