有时候,在写connect的时候会去犹豫一个问题----我的槽函数到底需不需要为虚函数。这个问题在我每次写connect的时候我都会反问自己,因为确实,如果你不去深究里面的moc,你发现不了太多问题。 比如有这么一个demo.#include #include #include class Tes....
分类:
其他好文 时间:
2014-07-16 21:51:52
阅读次数:
206
重载和重写搞的差不多了,隐藏有有点混乱了,在此记一下,留作后看成员函数被重载的特征(1)相同的范围(在同一个类中);(2)函数名字相同;(3)参数不同;(4)virtual 关键字可有可无。重写(覆盖)是指派生类函数覆盖基类函数,--这是c++多态的标志,虚函数赋零则变成虚基类(纯粹的接口申明类),...
分类:
其他好文 时间:
2014-07-16 20:50:54
阅读次数:
131
前些日子,有个同学问我一个关于虚函数的缺省参数问题。他是从某个论坛上看到的,但是自己没想通,便来找我。现在分享一下这个问题。先看一小段代码:
#include
using namespace std;
class A
{
public:
virtual void Fun(int number = 10)
{
cout << "A::Fun ...
分类:
编程语言 时间:
2014-07-10 23:05:08
阅读次数:
297
(1)假设一个名字在派生类的作用域内无法正确解析,则编译器将继续在外层的基类作用域中寻找该名字的定义。(2)派生类的成员将隐藏同名的基类成员。(3)除了覆盖继承而来的虚函数之外,派生类最好不要重用其它定义在基类中的名字。(4)声明在内层作用域的函数并不会重载声明在外层作用域的函数。定义在派生类中的函...
分类:
编程语言 时间:
2014-07-09 22:18:13
阅读次数:
228
参考文章:http://blog.chinaunix.net/uid-25132162-id-1564955.htmlhttp://blog.csdn.net/haoel/article/details/1948051/一、虚函数与继承 1、空类,空类单继承,空类多继承的sizeof#include...
分类:
编程语言 时间:
2014-07-09 21:44:59
阅读次数:
329
1.构造函数和析构函数中调用虚函数
(1)采用静态编译。
(2)在编译阶段自动联接自己类中的函数或基类中的函数,不在派生类中重定义一个函数。
注:构造函数和析构函数中调用的虚函数,派生类都不一定存在的情况下,只能去调用基类或者自身的函数。
example 1
#include
class A
{
public:
A() {}
virtual void...
分类:
编程语言 时间:
2014-07-08 17:48:25
阅读次数:
274
1.任何构造函数之外的非静态函数都可以是虚函数,virtual只能出现在类内部的声明语句之前而不能用于类外部的函数定义,如果基类把一个函数声明成虚函数,则该函数在派生类中隐式地也是虚函数。2.派生类能访问基类的public,protected成员,而不能访问私有成员。3.如果派生类没有覆盖其基类中的...
分类:
编程语言 时间:
2014-07-06 23:54:50
阅读次数:
486
1.C++中的多态
(1)多态性:同一个函数的调用可以进行不同的操作,函数重载是实现多态的一种手段。
(2)联编:在编译阶段进行联接,即是在编译阶段将一个函数的调用点和函数的定义点联接起来。
A.静态联编:在编译阶段就完成的函数联编——函数重载。
B.动态联编:在程序的运行阶段由系统自动选择具体的函数——虚函数。
注:C++的多态主要指的就是动态联编。
2.虚函数
(1)虚函数是在函...
分类:
编程语言 时间:
2014-07-06 12:42:45
阅读次数:
157
一、动态绑定什么时候发生当且仅当通过指针或引用调用虚函数时,才会在运行时解析该调用二、派生类中的虚函数当我们在派生类中覆盖了某个虚函数时,可以再一次使用virtual指出该函数的性质,但是这么做并非必须,因为一旦某个函数被声明成虚函数,则在所有派生类中它都是虚函数。一个派生类的函数如果覆盖了某个继承...
分类:
编程语言 时间:
2014-07-05 19:59:46
阅读次数:
228
虚构造函数,这似乎是很违反直观 的一件事情,因为当你拥有一个对象的指针或者引用的时候,你可以通过该对象的动态类型来调用虚函数,而在此处,你的对象还没有构造完成。
其实,“虚构造函数”并不是把你的构造函数声明为virtual,而是某一种函数,根据其输入数据,来决定此时构造什么类型的对象。比如你要从文件或者网络上读取一些数据,从该数据你来决定你要创建什么类型的对象。
比如:
下述的继承体...
分类:
其他好文 时间:
2014-07-04 09:13:37
阅读次数:
249