假设以下类
class Base
{
void Doajob(a,b){...}
}
class Derived: public Base
{
void Doanotherjob(a,b,c){...}
}
我定义了一个指针,如下所示:
auto ptr= unique_ptr<Base>(new Derived(name));
现在我想使用 ptr 指针访问 Doanotherjob:
ptr->Doanotherjob(a,b,c); // ERROR
((unique_ptr<Base>) ptr)->Doanotherjob(a,b,c); // ERROR
((unique_ptr<Derived>) ptr)->Doanotherjob(a,b,c); // ERROR
这甚至是正确的做法吗?语法是什么?