在C++中声明一个不同类型的变量
declare a variable with different types in C++
如何在C++中声明具有不同类型的变量
struct maxKernelBetTwoVec
{
size_t Elem1;
double Elem2;
};
所以 Elem2 可以是 int、double 或字符串。
您可以使用联合,但它们很难正确安全地使用。更好的选择是使用std::variant
:
struct maxKernelBetTwoVec
{
size_t Elem1;
std::variant<int, double, std::string> Elem2;
};
不幸的是,std::variant
仅在 C++17 中可用。如果还不能使用 std::variant
,可以改用boost::variant
。
相关文章:
- 我想将一个对T类型的非常量左值引用绑定到一个T类型的临时值
- 为什么转换函数声明不需要至少一个定义类型说明符
- 在 C++ 中将一个模板类型的对象类型转换为另一个模板类型
- 将内置类型变量传递给只有一个类类型参数的"+"运算符函数时自动类型转换的构造函数
- c ++ 我是否需要手动删除指向另一个具体类型的 void* 指针?
- 在 C++17 中的每个实例化时生成一个新类型
- 使用 SFINAE 测试是否可以将一个指针类型static_cast到另一个指针类型
- 检查数值类型是否是另一个数值类型的子集
- 为什么直接传递"this"指针来存档是一个错误,而另一个相同类型的指针是可以的?
- 将 std::variant 转换为另一个具有类型子集的 std::variant
- 类有一个自类型的对象
- 如何制作一个采用类型类的唯一指针?(通用)它不让我
- 在C++中声明一个不同类型的变量
- 构造一个空洞类型
- 定义一个新类型并重载其运算符
- C++制作了一个松散类型的语言解析器
- 在python中动态创建一个新类型
- 在函数返回值中定义一个新类型
- 如何通过友元函数将一个对象(类型a)传递给另一个对象(类型b)的私有对象(类型a)
- C++-如何获取结构的最后一个成员类型以及从现有对象访问它的方法