摘要:
1. main(){ printf("%f", 5);//5按照double输出,会内存越界,无法确定输出内容 printf("%d", 5.01); //会产生一个很大的数, 因为5.01是float, 和int的设计不一样,导致按照int输出会很大。}设置 某个位 #define BIT (0x01 <<3)void setBit(a){ a |= Bit;}void clearBit(a){ a&= (~Bit);}大端和小端 大端格式:在这种格式中,字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中,如图2.1所示 阅读全文
摘要:
私有继承只能继承父类的public和protected, 然后转化成自己的私有成员。保护继承会转化成保护成员, 再一次的继承就会体现出二者的差别。内存布局:题目:class A{ char a[4]; virtual void fa();}class B : virtual public A{ char b[4]; virtual void fb();}class C : virtual public B{ char c[4]; virtual void fc();}sizeof(A) = 8;sizeof(B) = 16;sizeof(c)=24;不指定继承 默认是私有继承的内存布局:htt 阅读全文
摘要:
对一个空类,默认会产生四个函数: 构造函数 析构函数 拷贝构造函数 和赋值函数。静态成员变量:可以在一个类的多个对象间共享数据静态成员变量需要初始化如果静态成员变量设为私有的,只能通过静态成员函数来访问。常成员变量,需要在类初始化列表中初始化 或者加入 static 变成静态的.class test{ const int a = 10; // wrong};class test{ static const int a = 10; // right};class test{public: const int a ; test():a(10) //right{}};class test{publi 阅读全文
摘要:
1 。 指针和引用的区别 八字: (引用)非空不改 (指针)合法检测2. 类的this指针: this指针只能在成员函数中使用,不能使用在静态函数和全局函数中。成员函数的第一个默认参数是this指针。在类中没有this指针这个变量,所以不能 obj.this这样使用在C++中,结构体也有this指针。3. 值传递和指针传递 虚函数的时候,只有传递的是引用或基类的指针会调用子类的函数。4. const 指针 右结合一个, 所谓 长住就得找个女朋友 哈哈 const int * p p找个了女朋友 *结婚了, 变成夫妻就不能换了 *P 是一对int * const p p左右看看没找个女朋友 p成 阅读全文
摘要:
const1. c中 修饰 变量 常量函数参数 函数参数不允许改变函数返回值 函数的返回值不允许改变一个不能改变值的变量 const buffsize okchar buff[buffsize] wrongc++ 修饰函数体 函数不能改变类成员变量sizeof结构体 必须为整个占用字节最大类型的元素的n倍,但不是非得4字节对齐结构体套结构体 ?sizeof strlen 对字符串数组来说,sizeof 包含\0 strlen 不包含\0sizeof 变量 可以不加括号 因为是个运算符空类为1 ,多重继承的空类也为1 ,但是 虚继承的空类为4 阅读全文