你是如何看待C++和C的关系?
最初C++是C语言加上一些面向对象的特性,但随着语言的发展,C++支持更多概念和特性,变得比C语言更具弹性和灵活性。现在C++是一个语言联邦,包含一下四个部分
1、C语言
2、面向对象C++
3、泛型编程
4、STL
C++是在C语言基础上,包含了其他特性而发展而来的。
介绍一下static和const
const允许我们定义一个语义约束,告诉编译器某个对象不应该被改变,编译器会强制帮助我们实施这一约束。如果我们定义某个值不能被改变,就应该使用const,来让编译器帮助我们保证这个条件不被违反。
可以修饰全局变量,局部变量
修饰函数返回值,函数参数
修饰指针本身,指针所指对象
修饰类的成员变量,类的成员函数
static
静态局部变量:在函数内声明的静态变量,只初始化一次,每次使用会维持前值。
静态全局变量:全局作用域内声明的静态变量,不能在其他源文件中访问。
静态函数:只能在本源文件内使用
静态成员变量:是类的所有对象共享的成员变量,它不属于特定对象而属于类,它在类的所有对象之间只有一个实例。
静态成员函数:不依赖于类的任何特