在 CPP 中动态分配变量的数据类型

Assigning datatype for variables dynamically in CPP

本文关键字:数据类型 变量 动态分配 CPP      更新时间:2023-10-16

我有一个名为Matrix的类,因为有两个变量我想定义rowscolumns

问题:
在类的构造函数中,我想动态分配值以及行和列的数据类型。

有没有办法在 c++ 中做到这一点?

示例:
在 Matrix 类的实例M1中,行和列的数据类型设置为long long int,在矩阵类的实例M2中,数据类型int

在类的构造函数中,我想动态分配行和列的值以及数据类型。有没有办法在 c++ 中做到这一点?

简而言之:您不能使用当前标准(从 c++-17 开始)。

数据类型需要在编译时解析。在 c++ 中,我们使用模板类来获得类中使用的泛型数据类型。但是,这些仍然必须在编译时解决。

您可以使用许多技巧,无论如何,都可以在运行时编译时从这些编译时生成的类型中进行选择。

提供解决方法的相关问答:

  • 在运行时选择模板实例化,但C++切换
  • 在运行时根据不同类型的实例化模板类
  • 在运行时有条件地实例化模板
  • 根据C++中的运行时字符串选择模板
  • 在运行时使用模板参数实例化类 (C++)?
  • 动态模板实例化

可能还有更多...