Che*_*tah 4 c++ oop polymorphism templates
class BaseA
{
}
class B : public BaseA
{
}
template <class T>
class C : public vector<T>
{
}
void someFunction (void)
{
C<B> myClass;
// I can't seem to do this...is it not possible?
vector<BaseA> converted = ((vector<BaseA>) myClass);
}
Run Code Online (Sandbox Code Playgroud)
请参阅代码中的注释,了解我要执行的操作.
APr*_*mer 12
即使B是A(我假设A和BaseA之间的混淆),B的向量也不是A的向量
尝试
vector<A> converted(myClass.begin(), myClass.end());
Run Code Online (Sandbox Code Playgroud)
这可能是你想表达的.
(继承自矢量的BTW 一般都是坏主意,它不是为此而设计的.)
归档时间: |
|
查看次数: |
192 次 |
最近记录: |