c++ - C++中带有模板变量的结构

标签 c++ class templates struct

我在玩模板。我不是要重新发明 std::vector,而是要掌握 C++ 中的模板。

我可以执行以下操作吗?

template <typename T>
typedef struct{
  size_t x;
  T *ary;
}array;

我正在尝试做的是一个基本的模板版本:

typedef struct{
  size_t x;
  int *ary;
}iArray;

如果我使用类而不是结构,看起来它可以工作,那么 typedef 结构不可能吗?

最佳答案

问题是你不能模板化 typedef,也没有必要在 C++ 中对结构进行 typedef。

以下将满足您的需要

template <typename T> 
struct array { 
  size_t x; 
  T *ary; 
}; 

关于c++ - C++中带有模板变量的结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2448242/

相关文章:

c++ - 接受一组对象类型的所有组合可能性作为在 C++ 中运行的参数

c++ - C++ 中的二叉搜索树,叶子为空值,不使用引用参数

c++ - 忽略包含特殊词的字符串(月)

c++ - 如何在 C++ 中将整数转换为十六进制 wstring

c++ - 根据继承更改对象类型

php - 如何包含扩展接口(interface)的 php 类

c++ - C++中的模板模板参数。使用实例

ruby-on-rails - 如何从字符串中获取模型类?

c++ - 什么时候应该对具有依赖空指针常量表达式参数的非限定函数调用进行名称查找?

c++ - 模板类的可变成员函数