关闭

纯虚函数可以有函数体

标签: pure-specifier on fu纯虚函数C++函数体
939人阅读 评论(0) 收藏 举报
分类:

出处:《C++Primer》中文版第五版541页第22行。


我们可以为纯虚函数提供定义,不过函数体必须定义在类的外部。若定义在类的内部,会出现错误:pure-specifier on function-definition

class Dummy
{
	//error:pure_specifier on function-definition.
	virtual void process()=0{};
};


class Dummy
{
	virtual void process()=0;
}
void Dummy::process()
{}








1
0
查看评论

C++纯虚函数

在成员函数的形参后面写上=0,则成员函数为纯虚函数。纯虚函数声明: virtual 函数类型 函数名 (参数表列) = 0;class Person { virtual void Display () = 0; // 纯虚函数 protected : string _name ; //...
  • qq_36221862
  • qq_36221862
  • 2017-03-11 10:00
  • 1752

C++程序设计课程主页-2014级

我和我的2014级学生在此开始“C++程序设计”课程的学习。借助于博客,我们将继续将”积累代码行“的实践进行下去,展现IT学子应有的风采。  联系我:可看CSDN博客和新浪博客,也可以上人人网加我好友,我的《IT学子成长指导》博客专栏,或许有些观点能够对你有用。
  • sxhelijian
  • sxhelijian
  • 2014-09-14 16:54
  • 25842

DLL接口的实现(虚函数)

DLL接口的实现(虚函数)        我们在c++编程过程中往往要用到各种不同形式的程序库,这些库的发布方式有动态库和静态库。对于静态类库,设计良好的静态类库能实现功能上的隔离,无法避免类库 实现必须重新编译、链接整个应用...
  • u011599942
  • u011599942
  • 2013-09-06 11:45
  • 2035

纯虚函数也可以有函数体

当: 我们希望基类不能产生对象,然而又希望将一些公用代码放在基类时,可以使用纯虚函数,并未纯虚函数定义函数体 #include using namespace std; class base { public: virtual void v() const = 0; virtual voi...
  • ninghu800
  • ninghu800
  • 2013-11-30 12:57
  • 333

C++中的虚函数和纯虚函数用法

使用虚函数,我们可以灵活的进行动态绑定,当然是以一定的开销为代价。 如果父类的函数(方法)根本没有必要或者无法实现,完全要依赖子类去实现的话,可以把此函数(方法)设为virtual 函数名=0 我们把这样的函数(方法)称为纯虚函数。 也就是说,虚函数 ,子类可以不重写,直接继承父类 的方法来使用,也...
  • mydriverc2
  • mydriverc2
  • 2013-10-10 17:52
  • 737

C++抽象类

如果声明了一个类,一般可以用它定义对象。但是在面对对象程序设计中,往往有一些类,它们不用来生成对象。定义这些类的唯一目的就是用它作为基类去建立派生类。抽象类是为了抽象和设计的目的而建立的,处于继承层次结构的上层。具体类是能够建立对象的类。抽象类的规定(1)抽象类只能用作其他类的基类,不能建立抽象类对...
  • m_hahahaha1994
  • m_hahahaha1994
  • 2016-07-19 18:33
  • 332

《C++语言基础》网络课程主页

返回 贺利坚教学链接  本课程是在大学的实体课程基础上建设的一门网络课程,将我在教学中建设的资源,让更多的人能够用到。  课程链接是:点击打开链接  同步实体课在 点击打开链接,那里有92名同时学习的“同学”。  坚持这门课程学习的学员,请在评论处留言,我将建立专门的链接,一起建设学习的氛围。  学...
  • sxhelijian
  • sxhelijian
  • 2015-03-07 15:57
  • 8306

[c++]为什么可以在基类中实现纯虚函数

引述自:http://forums.codeguru.com/showthread.php?356281-C-why-pure-virtual-function-has-definition-Please-look-into-sample-code-here
  • fnzsjt
  • fnzsjt
  • 2014-08-02 19:37
  • 1494

纯虚函数也可定义!

<br />今天,我读到《effective c++》的第34条款,里面竟然提到纯虚函数也是可以定义的,大吃一惊,赶快打开vs2005,自己编写了一段代码,编译运行,发现竟然真的可以!<br />俺的代码:<br />class A { public: v...
  • happymawolf
  • happymawolf
  • 2011-04-28 14:45
  • 5146

C/C++:C++伪函数

C++伪函数: 所谓的伪函数,就是说它不是一个真正的函数,而是一个类或者说是一个结构体。 #include void say_hello(){ std::cout << "hello world !" << std::endl;...
  • Ricardo_He
  • Ricardo_He
  • 2014-11-07 14:16
  • 1194
    个人资料
    • 访问:15506次
    • 积分:573
    • 等级:
    • 排名:千里之外
    • 原创:42篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条