在C中我可以这样做:

ppackage ppnull() {
    return (ppackage) {
        .type = NULL
    }
}

但是,在 C++ 中我遇到语法错误。我用GNU g++ 编译器。有开关可以启用此功能吗?

有帮助吗?

解决方案

c++11 您可以使用初始值设定项列表:

struct ppackage
{
    void* type;
};

ppackage ppnull()
{
    return {nullptr};
}

要不就

ppackage ppnull()
{
    return {};
}
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top