【发布时间】:2019-11-15 18:43:01
【问题描述】:
如果你有这样的类,在 Java 中:
class Box<E>
{
some code
}
您可以使用通配符执行以下操作:
Box<?> someBox;
someBox = new Box<Integer>();
someBox = new Box<Double>();
有没有办法在 C++ 中做到这一点?
换句话说,我如何在 C++ 中声明一个可以容纳 Box<Integer> 或 Box<Double> 或 Box<WhateverDataTypeHere> 的变量?
【问题讨论】:
-
指向基类类型的指针?
-
Java 代码不是一直向下到变量级别,而是应该做什么? C++ 和 Java 不一样,尝试从 Java 源代码模仿或建模 C++ 代码是不明智的。