typedef 到原始类型的前向声明

乔纳森·米

在我的文件中说我想做:

typedef vector<foo> foos

如果foo是在另一个文件中的类,我可以向前声明:class foo但是如果foo它本身是typedef一个原始类型,我不知道如何处理。例如在我做过的另一个文件中说:

typedef int foo

#include对文件的唯一选择footypedefd in 还是 do typedef vector<int> foos为了可读性和关​​联性,我宁愿避免这两个选项。还有什么我可以做的吗?

乔纳森·米

所以事实证明,您可以typedef多次执行相同的操作,而不是在

一旦声明,typedef-name 只能重新声明以再次引用相同的类型[ 1 ]

因此,就像您class foo用来转发声明foo它是否是一种类型一样,您也可以这样做:

typedef int foo

然后你typedef vector<foo> foos会编译得很好。这不会违反单一来源的原则,因为编译器会强制所有typedefs 匹配。如果您决定更改类型,尽管它会要求您还编辑所有定义为匹配的文件。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

typedef的前向声明

来自分类Dev

typedef类的前向声明

来自分类Dev

typedef类的前向声明

来自分类Dev

具有前向声明的C结构typedef

来自分类Dev

C ++混淆的typedef声明

来自分类Dev

Typedef / struct声明

来自分类Dev

typedef是什么类型的?

来自分类Dev

C++(和 ROS) - 包含与使用 set default 和 typedef 引用的前向声明

来自分类Dev

Typedef到C ++中的周围类型

来自分类Dev

使用typedef的多指针声明

来自分类Dev

typedef到底声明了什么?

来自分类Dev

将块声明为typedef

来自分类Dev

使用typedef的多指针声明

来自分类Dev

Typedef 枚举声明:这是正确的

来自分类Dev

以`int typedef my_int;`形式的Typedef声明。

来自分类Dev

确定typedef是什么类型

来自分类Dev

强类型使用和typedef

来自分类Dev

Typedef结构未知类型名称

来自分类Dev

在定义中使用typedef类型

来自分类Dev

如何从typedef获取模板类型

来自分类Dev

Assimp细化类型是指typedef

来自分类Dev

Swig 简单类型 typedef 参数

来自分类Dev

从typedef结构到结构数组

来自分类Dev

声明为两种类型的Typedef结构:“ typedef struct x {..} X,* XPointer”

来自分类Dev

如何转发声明要使用typedef创建的类型?

来自分类Dev

原始值的typedef在golang中是否等效?

来自分类Dev

如何使用typedef声明函数指针

来自分类常见问题

如何在Swift中声明typedef

来自分类Dev

转发声明模板类的typedef