1父类的正常成员函数子类可以使用,并不是继承下来 的,子类是怎么调用父类的函数 : 可能是利用了一种叫函数名联编的方法.没有隐藏的情况下用函数名字来决定调用的函数.
子类是怎样调用父类的函数的,带汇编解释
http://blog.csdn.net/hejinjing_tom_com/article/details/4165462
2C++中的基类与派生类,看后半部分.
http://www.cnblogs.com/sujz/articles/2044365.html
3
在面试中有时会问到某个类或对象所占内存的大小,今天先总结一下,其实这涉及到C++的内存布局,等以后有时间好好总结一下,今天就把想到的一些记录一下:
1. 普通的成员函数不会占内存,但是普通的成员变量占内存
2. Static的变量和函数都不会占内存。
3. Virtual成员函数(包括纯虚函数)会占内存,因为会有一个vptr指向virtual table的原因,所以不管有多少个virtual函数,均只占一个sizeof(vptr)=4
4. 派生类:需要加上其基类的size (自己补充:什么虚函数虚表的, ,就知道派生类是有每个基类的vtptr的)
4
游戏有关增加虚函数不影响各组件内存结构
http://bbs.csdn.net/topics/390128286
有助解决很多细节问题的大总结:如 多态的作用:继承是子类使用父类的方法,而多态则是父类使用子类的方法。
纯虚函数用来规范派生类的行为,实际上就是所谓的“接口”。它告诉使用者,我的派生类都会有这个函数。
http://blog.csdn.net/skylor/article/details/4028552
6
这其实不叫继承,这是可以全局调用的,静态函数不属于任何一个类的实例,在类被加载的时候,静态函数就会被创建,他的调用是通过类名调用的,所以你用子类类名调用父类静态函数和用父类类名调用这个静态函数完全一样没有任何区别
可不可以在子类的成员函数中调用这个父类静态函数?该怎么写呢 class child: public father { void fun() { father::静态函数(); //1 静态函数(); //2 } }: 1还是2?
1,子类的对象或者父类的名字,你还可以写成this-> 静态函数()
其他3条回答
不会被继承。只是个全局调用。 静态函数存放于对象模型内存之外。与类继承无关。
会的 只要是public、protected访问控制符修饰的,子类类名、子类对象(或对象引用、指针)都可以调用这个父类的静态函数的。
为什么基类和子类被看成是同一类型: 因为子类是从基类派生出来的(通过偏移指针就能来回改变小类型),以基类类型为准.所以看到的通常都是基类在左值
http://www.cnblogs.com/shiyangxt/archive/2010/12/04/1896398.html