首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

这几个语句要如何理解啊新格式?看不懂

2012-04-05 
这几个语句要怎么理解啊?新格式???看不懂啊//#include iostream//

这几个语句要怎么理解啊?新格式???看不懂啊
//=============================
#include <iostream>
//=============================
class   IDATE{
protected:
virtual   int   ymd2i()   =   0;
public:
  virtual   ~IDATE(){}
  virtual   IDATE&   operator+(int   n)=0;
  virtual   int   operator-(const   IDate&   d){return   ymd2i()-d.ymd2i();}

};//========================
IDATE&   createDate(int   y,int   m,int   d);


程序有删截
1.这个程序里的virtual   ~IDATE(){}   这个语句怎么没有分号?
2.   virtual   int   operator-(const   IDate&   d){return   ymd2i()-d.ymd2i();}     这个语句里的virtual实际上是了单删除线的,不过我打不出来...这里加个删除线有什么作用?书上说是删除这个关键词,不是删除一行,这句话怎么理解,为什么要这么做?     另外这个语句等价于什么啊,看不太懂,对于operator不是很清楚
3.IDATE&   createDate(int   y,int   m,int   d);     这句里IDATE是类名,createDate是成员函数,IDATE&   createDate是什么意思呢
4.一般什么时候要用到   using   std::string;


[解决办法]
1.这个程序里的virtual ~IDATE(){} 这个语句怎么没有分号?
//这个不需要分号,只有class定义结束才需要分号
2. virtual int operator-(const IDate& d){return ymd2i()-d.ymd2i();} 这个语句里的virtual实际上是了单删除线的,不过我打不出来...这里加个删除线有什么作用?书上说是删除这个关键词,不是删除一行,这句话怎么理解,为什么要这么做? 另外这个语句等价于什么啊,看不太懂,对于operator不是很清楚
前面几点看不大懂,“operator”就是运算符重载 也相当一个函数,,要详细了解,找本CPP的教科书就可以了
IDATE& createDate(int y,int m,int d); 这句里IDATE是类名,createDate是成员函数,IDATE& createDate是什么意思呢
就是一个函数,返回一个IDATE类型的引用
4.一般什么时候要用到 using std::string
#include <string>
就要用到命名空间std;因为string在新的c++标准中,定义在命名空间std中,要引入命名空间才能使用string
引入的方法有三种:
1,using namespace std;
2,using std::string;
3,在每个地方std::string

热点排行