上一页 1 ··· 51 52 53 54 55 56 57 58 59 ··· 121 下一页

2014年4月23日

C++ 虚函数表 多重继承

摘要: 上次研究的是单继承的情况,这次研究多重继承下的虚函数表的排列情况。 这次A,A1,A2,B这几个类的继承关系如下图: 测试代码如下:#includeusing namespace std;class A{... 阅读全文

posted @ 2014-04-23 00:09 疯子123 阅读(203) 评论(0) 推荐(0)

2014年4月22日

C++ 虚函数表 单继承

摘要: 本文研究单继承情况下,c++对象的虚函数表的具体情况。 假设有两个类A,B, 其中B由A派生出来,A含有虚函数fun1,B含有虚函数fun2。测试的代码如下:#includeusing namespace std;class A{public: vir... 阅读全文

posted @ 2014-04-22 23:35 疯子123 阅读(149) 评论(0) 推荐(0)

私有继承

摘要: C++编程语言中,在声明一个派生类时将基类的继承方式指定为private的称为私有继承,用私有继承方式建立的派生类称为私有派生类(private derived class),其基类称为私有基类(private base class)。如果两个类之间的继承关系为私有或者保护,编译器一般不会将派生类... 阅读全文

posted @ 2014-04-22 10:36 疯子123 阅读(269) 评论(0) 推荐(0)

2014年4月17日

内联函数和宏定义的区别

摘要: 两者区别如下:内联函数在编译器时展开,宏在预编译时展开。在编译的时候内联函数可以直接被嵌入到目标代码中,而宏只是一个简单的文本替换。内联函数可以完成诸如类型检查、语句是否正确等编译功能,宏就不具有这样的功能。宏不是函数,inline函数是函数。宏在定义时要小心宏参数(一般情况是把参数... 阅读全文

posted @ 2014-04-17 22:47 疯子123 阅读(175) 评论(0) 推荐(0)

#pragma pack(x) CPU对齐

摘要: 编译器会尽量把成员对齐以提高内存的命中率。对齐是可以更改的,使用"#pragma pack(x)“ 可以改变编译器的对齐方式。 C++固有类型的对界取编译器对齐方式与自身大小中较小的一个。例如,指定编译器按2对齐,int 类型的大小是4,则int 的对界为2和4中较小的2。在默认的对... 阅读全文

posted @ 2014-04-17 21:49 疯子123 阅读(116) 评论(0) 推荐(0)

static 变量(静态变量)

摘要: 在C++的面向对象编程中,static还可以加在类的数据成员或成员函数之前。这样定义的数据成员或成员函数就被类所拥有,而不再属于类的对象。#include using namespace std;class widget{ public: widget() { ... 阅读全文

posted @ 2014-04-17 00:15 疯子123 阅读(145) 评论(0) 推荐(0)

2014年4月16日

C++ 中const作用

摘要: 一、对const与#define的特点及区别的理解 #define只是用来做文本替换的,#define常量的生命周期止于编译期,它存在于程序的代码段,在实际程序中它只是一个常数,一个命令中的参数,并没有实际的存在。 const常量存在于程序的数据段,并在堆栈中分配了空间。c... 阅读全文

posted @ 2014-04-16 23:05 疯子123 阅读(274) 评论(0) 推荐(0)

如何连接宏参数

摘要: #include#define CONS(a,b) (int)(a##e##b)#define STR(s) #sint main(){ printf(STR(huawei)); printf("\n"); printf("%d\n",CONS(2,3)); return 0;}在本程序中... 阅读全文

posted @ 2014-04-16 22:09 疯子123 阅读(160) 评论(0) 推荐(0)

main函数之后的调用

摘要: main函数代表进程的主线程。程序开始执行时,系统为程序创建一个进程,main函数其实并不是首先被调用的函数,而是操作系统调用了C/C++运行期启动函数,该函数负责对C/C++ 运行期库进行初始化。它还能够保证已经声明了的任何全局对象和静态对象能够在代码执行之前正确的创建。 ... 阅读全文

posted @ 2014-04-16 18:53 疯子123 阅读(530) 评论(0) 推荐(0)

C++语言编译系统提供的内部数据类型的自动隐式转换

摘要: C++语言编译系统提供的内部数据类型的自动隐式转换规则如下:程序在执行算术运算时,低类型自动隐式转换为高类型。在函数调用时,将实参值赋给形参,系统隐式的将实参转换为形参的类型,并赋值给形参。函数有返回值时,系统自动的将返回表达式类型转换为函数类型,并赋值给调用函数。 当在... 阅读全文

posted @ 2014-04-16 13:31 疯子123 阅读(142) 评论(0) 推荐(0)

上一页 1 ··· 51 52 53 54 55 56 57 58 59 ··· 121 下一页

导航