C语言和C++基础区别
C语言和C++基础区别。
主要内容是:命名空间,输入输出,C++bool类型,引用类型,堆内存申请,结构体区别,以及函数的重载和缺省思想。
C++标准输入和输出
- 01
C++标准输入和输出分别是cin和cout 用法非常简单,cin>>number;表示输入一个数子 cout<<"莫帅";表示输出字符串。
命名空间
- 01
命名空间的引入:增加标识符的使用效率。 1.命名空间的定义 :namespace 标识符{ } 例:namespace my{int a=1;} 命名空间中的成员访问:作用域分辨符:: 例: cout<<my::a<<endl; 省略限定符(前缀):using namespace my; 联想到 标准命名空间 :using namespace std; 标准命名空间 没有这个,需要加std::cout ,std::cin ,std::endl; 2 .命名空间的嵌套: cout<<my::danny::b<<endl;不想使用这么长的前缀 第一种:using namespace my::danny; 第二种: namespace IM=my::danny
数据类型的区别
- 01
bool:布尔类型 1. 值:0 和1 或者false和true 2. 代表是真和假,计算机里面非零表示真,只有0表示假 3. 内存占用 1个字节 一般当做判断函数的返回值类型使用
- 02
引用类型 1.起别名的作用 2.防止拷贝本产生 3.当作左值使用
- 03
堆内存申请 由原来的malloc,realloc,calloc,free 等改为new和delete
- 04
结构体: 1.定义变量直接使用结构体名,可以省略关键字struct 2.结构体中允许成员的存在,以及构造函数的存在
函数思想
- 01
inline 内联 inline关键字用来定义一个类的内联函数,引入它的主要原因是用它替代C中表达式形式的宏定义。
- 02
函数重载 函数重载:允许函数名相同,参数不同的函数存在 1.参数数目不同 2.参数类型不同 3.参数类型不同时候参数类型不同
- 03
函数缺省 函数缺省:允许函数参数被初始化 1.函数缺省其实是重载的一种优化体 2.函数缺省必须从右往左缺省