gpt4 book ai didi

c++ - C++中具有匿名类型的嵌套结构

转载 作者:搜寻专家 更新时间:2023-10-31 01:31:27 24 4
gpt4 key购买 nike

我正在尝试将 C 中的嵌套结构代码移植到 C++ 中。我知道在 C++ 中,内部结构类型将是外部结构类型的成员。在我的例子中,我有一个没有类型的内部结构(用 * 标记),我不知道如何向编译器完全指定 struct2。

typedef struct struct1
{
struct // *
{
struct struct2
{
int bla;
int bla2;
} *array;

int bla3;

} list;

int bla4;

} struct1_t;


int main()
{
struct1_t *st = new struct1_t();

st->bla4 = 10;
st->list.bla3 = 45;

// ?
st->list.array = new struct1_t::struct2();


return 0;
}

编辑:上面的结构代码是由ASN1编译器自动生成的,我无法对其进行任何更改。

最佳答案

这对我适用于 C++11:

st->list.array = new decltype( struct1_t::list )::struct2;

关于c++ - C++中具有匿名类型的嵌套结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45848113/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com