typedef in C++ - 需要帮助理解
typedef in C++ - Need help understanding
我理解typedef的一般概念。但是我遇到了这个,不知道这意味着什么:
typedef PackedIntItem <uint16_t, uint16_t, 0x0FFF, 0xF000, SomeClassName, uint16_t, 0xFFFF> SomeTypeName;
typedef <old name> <new name>;
表示我想为数据类型指定一个新名称。通常因为
- 旧名字很长
- 我们想抽象名称,以便我们可以轻松地从一种类型更改为另一种类型
在您的情况下,您有用例#1
typedef PackedIntItem<uint16_t, uint16_t, 0x0FFF, 0xF000, SomeClassName, uint16_t, 0xFFFF> SomeTypeName;
旧名字很长。现在你的问题归结为——那个长名字到底是什么?
它是一种模板化数据类型。这意味着它是这样形成的。
template<type T1, type T2> class Elephant
{
T1 widget;
T2 oleAtIt;
}
但在你的情况下有更多的 Ts。现在当你这样做时
Elephant<int, char> dumbo;
您实际上会得到一个类的实例,就好像您已经声明了一样
class Elephant
{
int widget;
char oleAtIt;
}
当您看到std::vector<int> listInt;
时,这就是您正在使用的内容
在您的情况下,有人制作了一个具有异常大量参数的模板。看看你是否能找到它的声明
模板是一个巨大的话题。谷歌很多。玩得愉快
相关文章:
- 需要帮助设置在C++中使用的Potrace
- 在指针的帮助下,文本文件中单词的频率
- 计算每个节点的树高,帮助我解释这个代码解决方案
- 如何在Qbutton的帮助下更改Q对话框的宽度
- 需要帮助将结构数组传递给函数
- C++需要帮助从用户那里获得一个整数,并确保它在另外两个整数之间
- 需要帮助在 c++ 中将字符串转换为字符 ----错误 "const char *" 类型的值不能用于初始化 "char" 类型的实体
- 有人可以帮助我处理正则表达式吗?
- C++调用具有 *this 属性的单个帮助程序函数
- C++:需要帮助了解运算符重载错误
- 需要以下代码的帮助,下面的代码有什么问题
- CS1 项目帮助C++
- 用于检查值是否为其任何参数的帮助程序函数
- 需要有关此 if 语句的帮助
- 类型限定宏帮助程序
- CoreCLR 中的检测探查器 - 将帮助程序程序集加载到 dotnet 进程的方法
- NS3 插槽混淆(需要帮助理解)
- 设计帮助 - 为不同类型的消息处理通用接口的设计模式
- 需要帮助查找内存泄漏
- 有人可以帮助我理解这些参数/参数吗?