typedef相关内容

类模板的别名

在下面的代码中考虑一个类似于 A 的别名模板。现在让 B 为 A 的别名模板。 在下面的代码中,这些类模板用作结构 C 的模板参数,该结构仅专用于一种类型名称( A )。 clang -std = c ++ 11 存在,错误为:未定义模板'C'的隐式实例化指示 template 使用A = int; template 使用B = A ..
发布时间:2020-09-27 19:02:03 C/C++开发

如何检查一个类是否在C ++ 11中指定了嵌套类定义或typedef?

在我的项目中,我想实现一些现有的更大类的模板代理类。现有的类是库类,因此无法修改。在大多数情况下,客户端不知道对象是代理类还是更大类的实例。但是,在某些情况下,客户必须知道详细的班级信息。由于代理类本身是模板类,因此我认为按类名重载简单函数不会解决此问题。我认为可能的解决方案是在代理类内部添加一个内部嵌套类或typedef,然后客户端检查是否存在该类/ typedef以获取类信息。我的问题是:如何 ..
发布时间:2020-09-27 06:45:26 C/C++开发

功能模板的别名

我创建了一个CPU调度程序,它将具有不同编译选项的相同功能编译为不同的目标文件。为了使我的代码能够访问不同目标文件中的相同函数,我需要为每个目标文件中的函数赋予不同的名称。 在C(或C ++)中,我会在头文件中为函数的声明做类似的事情。 typedef float MyFuncType(float a); MyFuncType myfunc_SSE2,myfunc_SSE41 ..
发布时间:2020-09-27 04:48:22 C/C++开发

为什么C ++中的类型别名在其语法中使用“ using”而不是“ typedef”?

很明显,类型别名和模板化类型别名在语义上等效于typedef和typedef的扩展以支持模板。如何为这些关键字创建使用 using 关键字的新语法,而不是使用typedef作为第一个语法扩展名以及使用单词 typedef 。 注意:这不是“使用和typedef之间的差异”问题的副本。我知道使用的好处是可以定义一个 typedef s系列。我要问的是,为什么标准人决定让此扩展名使用 using ..
发布时间:2020-09-27 00:39:04 C/C++开发

GCC:使用-Wcast-qual抛出警告,将const指针转换为数组typedef的const指针

编辑:问题在此处进行了更深入的解释(谢谢! @Eric Postpischil).这似乎是GCC中的错误. 首先,让我从一些上下文开始:我正在编写的代码使用的是我无法更改的API,在我无法更改的GCC版本上,带有不允许删除的编译标志,以及当我完成后,它必须正好为零警告或#pragmas. 编辑:也没有工会. EDIT2:假定构建系统在阳光下还使用-Wall -ansi -peda ..
发布时间:2020-09-07 06:51:28 其他开发

Typedef struct vs struct? |定义差异|

以下块在 main() 之外,并且在每个函数(全局作用域)之前 第一段: struct flight{ int number; int capacity; int passengers; }; 与编写}var相比,您可以创建数组,指针,变量; (仅定义此自定义数据类型的一个变量(结构 flight )) 第二个区块: typedef struct flight{ int ..
发布时间:2020-07-21 18:52:45 其他开发

模板化别名声明的部分专业化

在这个问题中,我引出了一个特殊的解决方案,其中涉及对模板化别名声明的部分专门化.通用案例在此答案中进行了描述.假设我有一个模板类 template class X { // .... }; 我不是在让T腾空并专门化其他模板参数的情况下,而是在其他参数取决于T且仅取决于T的情况下.作为一个非常具体的示例(比另一个问题中的示例更易于管理),请考虑模板 ..
发布时间:2020-07-12 04:42:31 C/C++开发

使用-声明现有名称空间类型与创建类型别名

这不是关于using和typedef在创建类型别名方面的区别的问题.我想提供从代码块或函数内部的命名空间访问现有类型的方法. 我发现了两种不同的方式: 我可以使用using声明“包含"类型: using typename mynamespace::mytype; 或者我可以创建一个类型别名: typedef mynamespace::mytype mytype; us ..
发布时间:2020-07-12 04:40:00 C/C++开发