【发布时间】:2022-01-21 10:10:19
【问题描述】:
#include <vector>
#include <string>
struct BasePluginInfo
{
bool bHasGui, bIsSynth;
char cType;
std::string sCategory, sSdkVersion, sVendor, sVersion;
};
struct PluginClassInfo
{
std::string sName, sUid;
std::vector<std::string> vsParamNames;
};
struct ShellPluginInfo : BasePluginInfo
{
std::vector<PluginClassInfo> vciClasses;
};
当我这样做时
int main() {
ShellPluginInfo
{
.bHasGui = true
};
}
编译器抱怨ShellPluginInfo has no field 'bHasGui'。
但这是可行的:
int main() {
ShellPluginInfo info;
info.bHasGui = true;
}
【问题讨论】:
标签: c++ inheritance struct aggregate-initialization