可能重复:
这是我想要初始化它的方式(“???”是我不确定的部分):
我知道 {} 会为所有结构成员提供合理的默认值,但我不愿意这样做。
当我使用 -std=c++0x 编译时,我可以这样做(而且似乎可以工作):
我正在使用gcc版本4.4.5(Debian 4.4.5-8),并希望在不使用-std=c++0x选项的情况下完成此操作。
如何像C数组一样初始化“const std :: vector<T>”?
{{link1:链接1}}
当std :: vector是结构体的成员时,提供显式初始化程序的正确语法是什么? 这是结构:
struct pattern_info
{
std::string pattern;
std::vector<std::string> patterns;
};
这是我想要初始化它的方式(“???”是我不确定的部分):
pattern_info p = { "", ??? };
我知道 {} 会为所有结构成员提供合理的默认值,但我不愿意这样做。
当我使用 -std=c++0x 编译时,我可以这样做(而且似乎可以工作):
pattern_info p = { "", {} };
我正在使用gcc版本4.4.5(Debian 4.4.5-8),并希望在不使用-std=c++0x选项的情况下完成此操作。