首页 > 代码库 > C++一些基本知识(持续整理中......)

C++一些基本知识(持续整理中......)

1,C++ 是一种静态类型的语言,在使用变量前,必须先定义其类型。在编译时会做类型检查,在编写c++表达式的时候,编译器会检查表达式中所用的对象类型是不是之前给其定义的类型,或能否转换为之前给其定义的类型。所以,C++ 的这种静态类型检查,能帮助开发者更早的发现错误。

2,左值可以出现在赋值语句的左边和右边。

   右值只能出现在赋值语句的右边。

3,变量(即对象)是内存中具有类型的区域。变量是否自动初始化取决于变量定义的位置:函数体外的变量自动初始化为0,函数体内的变量不会自动初始化。

   类类型变量(类对象)的初始化时通过定义类的构造函数实现的。

4,const 对象不能赋给非const引用: 

        const int val1 = 10;//ok

const int& val2 = val1;//ok

int& val3 = val1;//error cannot convert from ‘const int‘ to ‘int &‘

int val4 = val1;//ok

  所谓“引用”是指指向const对象的引用。因为val3是非const引用,所以可以修改val3指向的对象的值。当val1赋给val3时,如果是合法的那么val1指向的对象将不可以被改变,这个val1的定义不相符。

5,派生类的对象只能访问基类的public成员。那么 当派生类protect继承基类时,就不能把派生类的对象赋给基类的指针。即 Base *abj = new Child();是不可以的。因为在protect继承时,基类的public和protect成员在派生类看来都是protect成员。


C++一些基本知识(持续整理中......)