![]() |
1
2
是的,你保证过
无论何时使用泛型,都应该记住泛型参数类型是由类/方法的客户机代码提供的,而不是由类/方法提供的。这是你的强迫
如果你坚持使用泛型,你不能假设
另一个解决方案可能是限制
|
![]() |
2
2
问题是编译器不知道要传递什么类来代替I。假设您创建了另一个类似于Dog的派生自Animal的类Cat。现在你用Cat代替I,按照代码这是可以的。但是构造函数。构造函数(“myDog”)是返回的狗,是猫的兄弟姐妹,不能解析成猫。所以错误会来的。看到代码了吗
检查以下代码。你正在经过一只猫,你想让它和狗一起被映射。那是行不通的。
|
![]() |
3
1
你可以通过
|
![]() |
4
1
|
![]() |
KiraHoneybee · 具有构造函数参数的模板化类 3 年前 |
![]() |
nick2225 · 隐式调用复制构造函数? 3 年前 |
![]() |
nohaga · 为什么在本例中p3需要默认构造函数? 3 年前 |
![]() |
Aadil Hoda · 为什么类类型的成员需要初始化? 3 年前 |
![]() |
EloiGG · 具有任意类型的变量的可数的C++函数 3 年前 |