gpt4 book ai didi

c++ - 关于类型定义结构

转载 作者:太空狗 更新时间:2023-10-29 23:02:16 26 4
gpt4 key购买 nike

请放轻松,因为我在这里走的很细。我真的搜索了现有的线程,但我只能看到没有示例的语句,这让我难以理解。这两天我一直在考虑是否要问这个问题,因为坦率地说,我很害怕在这里问一个愚蠢的问题。但我想我现在要冒这个险,希望你对我宽容一点,因为这是我的第一个问题。

那些现有的线程建议 typedefing struct 将保存重复代码,但是如何呢?请问有什么例子吗?例如,我有以下内容:

struct Node {
int data;
Node* value;
};

要创建一个新节点,我会说:

Node n1;

即使我像这样输入结构体:

typedef struct Node {
int data;
Node* value;
} type;

要创建一个新节点,我会这样做:

type n2;

我真的看不出有什么区别。请提供一些真正展示 typedef 对结构的有用性的示例。

最佳答案

对于这类事情,typedef 在 C 中很有用——在 C++ 中没那么有用。在 C 中,您不能只键入 Node当你有 struct Node - 你必须实际输入 struct Node .所以 typedef 可以在那里节省一些输入。

在 C++ 中,它在处理模板化类型时更有用。例如

typedef std::map<std::string, std::pair<int, std::string>> MyMap;

这让您可以使用例如MyMap::iterator而不是 std::map<std::string, std::pair<int, std::string>>::iterator ,这更容易输入。

关于c++ - 关于类型定义结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29159545/

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