- 论坛徽章:
- 0
|
写了如下代码
class x
{public:
x(){};
virtual ~x() {};
}
class A
{public:
A(){};
virtual ~A(){};
}
class B:public A
{public:
B(){};
virtual ~B(){};
}
class C:public B
{public: C(){};
virtual ~C(){};
}
class D:public x,public C
{public: D(){};
virtual ~D(){};
}
int main()
{ D *pd=new D;
A *pa=dynamic_cast<A*>(pd);
return 0;}
编译出错,错误如下
g++ -o dynamic_cast dynamic_cast.cpp
dynamic_cast.cpp:26: error: new types may not be defined in a return type
dynamic_cast.cpp:26: error: two or more data types in declaration of `main'
dynamic_cast.cpp:26: error: two or more data types in declaration of `main'
dynamic_cast.cpp:26: error: two or more data types in declaration of `main'
dynamic_cast.cpp:26: error: two or more data types in declaration of `main'
dynamic_cast.cpp:26: error: extraneous `int' ignored
dynamic_cast.cpp:26: error: `main' must return `int' |
|