关于类继承的一个问题

wpp_zyt 2007-08-03 04:54:02
在vs2005下编译,在一个地方出了8个错误,请问是语法不对吗?错误已标出
#include "stdafx.h"
#include "iostream"
#include "string"
using namespace std;
class S{
public:
virtual void write(){cout<<"S::write"<<endl;}

};
class R:public virtual S{
public:
void write(){cout<<"R::write"<<endl;}
}
class TS:public R{ //***********错误
public:
void write(){cout<<"TS::write"<<endl;}
};
class RS:public R{
public:
void write(){cout<<"RS::write"<<endl;}
};
class Radio:public TS,public RS{
public:
void write(){
cout<<"Radio::write"<<endl;
}
};
void mytest(Radio* p) {
S* s1=dynamic_cast<RS*>(p);
s1->write();
}
int main(int argc, _TCHAR* argv[])
{ Radio rr;
mytest(&rr);
return 0;
}
error C2236: 意外的“class”“TS”。是否忘记了“;”?
error C2143: 语法错误 : 缺少“;”(在“:”的前面)
error C2059: 语法错误 : “:”
error C2059: 语法错误 : “public”
error C2143: 语法错误 : 缺少“;”(在“{”的前面)
error C2447: “{”: 缺少函数标题(是否是老式的形式表?)
error C2504: “TS”: 未定义基类
...全文
266 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
bill2ccssddnn 2007-08-03
  • 打赏
  • 举报
回复
少分号,接分
wpp_zyt 2007-08-03
  • 打赏
  • 举报
回复
郁闷
wpp_zyt 2007-08-03
  • 打赏
  • 举报
回复
taodm 2007-08-03
  • 打赏
  • 举报
回复
} //少了;
class TS:public R{ //***********错误
lockhall 2007-08-03
  • 打赏
  • 举报
回复
class R:public virtual S{
public:
void write(){cout<<"R::write"<<endl;}
} ;
//少了個分號。

仔細點啊 :)

64,281

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧