我有两个用户定义的类:
class A:class Base
{
type x;
doSomething();
}
class B
{
type x;
doSomething();
}
我还有一个函数,它获取一个 Base 类型的变量并用于dynamic_cast
将其转换为 A 类型并使用 doSomething()。
class D : class Base2
{
D(Base _base1):Base2(Base _base1)
{
//here is the actual problem
}
void foo()
{
//b is a private member of class Base2 of type Base
A *a=dynamic_cast(b);
A->doSomething();
}
}
但我想将 B 传递给这个函数,同时我不希望 B 从 Base 继承。
ps 我无权更改 Base
这怎么可能?