gpt4 book ai didi

C++ 一个结构是否可以接受另一个结构?

转载 作者:行者123 更新时间:2023-11-30 01:56:07 28 4
gpt4 key购买 nike

例如,我正在制作一个链表结构,我想知道是否可以这样做:

struct linked_list {
<data structure defined by caller>
linked_list *next, *previous;
};

"<data structure defined by caller>"区域,我想知道如何实时制作另一个结构并将其放置在该区域?

我不想这样做:

struct A {
...
};

我不想将 A 放在我的链表中,我想知道是否可以在我的调用者中创建唯一的结构,然后将这些结构放在我的 link_list 文件中?例如,使用一个 linked_list 类来创建数百个具有不同数据类型的不同结构,这些结构都继承 self 的链表?

编辑:更清楚地说,我想要这样的东西:

struct Fruit {
int type;
struct {
int size;
int circumference;
};
};

除非我希望能够在创建时动态更改内部结构内的所有变量。这可能吗?

最佳答案

您正在寻找模板。

template <typename T>
struct linked_list {
T value;
linked_list *next, *previous;
};

像这样使用它:

struct other_struct {
int foo;
};

linked_list<other_struct> ll;

关于C++ 一个结构是否可以接受另一个结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20166723/

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