gpt4 book ai didi

C++ typedef 类使用

转载 作者:IT老高 更新时间:2023-10-28 23:10:35 25 4
gpt4 key购买 nike

为什么要使用 typedef class {} Name

我在 IBM C++ doc 中学到了这一点,这里没有使用提示。

最佳答案

这是“C”语言的遗留问题。

在 C 中,如果你有

struct Pt { int x; int y; };

那么要声明这个结构的一个变量,你需要这样做

struct Pt p;

typedef 帮助您在 C 中避免这种情况

typedef struct { int x; int y; } Pt;

现在你可以做

Pt p;

在 C 中。

在 C++ 中,这是不必要的,因为

class Pt { int x; int y; };

允许你做

Pt p;

它在 C++ 中没有像在 C 中那样提供符号上的好处。OTOH,它会导致限制,因为这种语法不提供任何构造或销毁机制。

即您不能在构造函数或析构函数中使用名称 typedef 名称。

typedef class { int x; int y; } Pt;

你不能有一个叫做 Pt 的构造函数,也不能有一个析构函数。所以本质上,大多数时候,你不应该在 C++ 中这样做。

关于C++ typedef 类使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15501649/

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