C++(1)基础

C和C++的比较:

C语言运行效率比C++快

C语言是C++的子集

C++比C语言多了bool数据类型

C输入scanf 输出printf C++输入cin 输出cout

C++有命名空间:namespace []{} 

                            using namespace [];

C++面向过程,也面向对象[封装,继承,多态]

C语言只面向过程

指针 VS 引用

引用是变量的别名,不能只有引用别名,必须要有一个真实的变量与之对应

对引用操作,相当于对原变量操作,直接影响本体

结构体类型引用

指针类型引用

引用做函数参数

#define VS const

const 有数据类型,define没有

const 编译时检查语法错误,define宏定义编译时计算机不检查语法错误

const与基本数据类型,使变量变成常量,无法更改,若更改,编译时不通过。

const与指针类型:int const a = 3; int *p = &a; 指针指向const修饰的变量时,应该是const int const *p = &a;

 

const与引用

示例:

函数默认值 和 函数重载

C++函数的新特性

默认值必须从右往左依次排列,不能够穿插。

声明时可以加默认值,而定义式不建议加默认值。

在没有实参的时候就使用默认值,否则实参覆盖默认值。

函数重载:在相同的作用域内,用同一函数名定义的多个函数,参数个数或参数类型不同。

内联函数:inline 

优点,节省调用的返回值的时间,那么,为什么不在所有地方都使用内联函数?

C++最令人头疼的工作:内存管理

内存本质是计算机资源,有操作系统掌控,我们只能申请和归还。

申请、归还内存资源的过程就是内存管理。

申请内存:new    int *p = new int;       int *arr = new int[10];

释放内存:delete   delete p;                delete []arr;

申请内存不一定能够成功:

释放内存需要注意什么:

猜你喜欢

转载自blog.csdn.net/mua_mua_mua/article/details/83511962