您的位置:首页 > 编程语言 > C语言/C++

C++终极复习篇(二)----认知C++

2015-12-01 20:28 483 查看
前面对C++的HelloWorld程序进行了解析,那么现在就开始了解C++相较于C的新特性吧:

(1)标准输入输出:cin、cout、cerr(标准出错输出)、clog(cerr的缓冲形式);

(2)const定义常变量:宏定义其实是字符置换,不占用存储单元,而const定义常量,具有变量属性,有数据类型,占用存储单元,有地址;

(3)函数原型声明:强制性原型声明;

(4)函数重载:C++允许在同一作用域中定义多个同名函数,通过参数类型和参数个数对其加以区分来实现不同的功能;

(5)函数模板:建立一个通用函数,其函数类型和形参类型不具体指定,用一个虚拟的类型来代表:

<span style="font-family:Times New Roman;font-size:14px;">#include <iostream>
using namespace std;
template<typename T>
T max(T a,T b,T c)
{
if(b>a)
a=b;
if(c>a)
a=c;
return a;
}
int main()
{
int ia=0,ib=5,ic=8;
double da=0.0,db=5.0,dc=8.2;
cout<<max(ia,ib,ic)<<endl;
cout<<max(da,db,dc)<<endl;
return 0;
}</span>


(6)默认参数的函数:可指定形参有默认值;

(7)变量的引用:为变量起别名,更加方便的使用变量,不能建立void和数组类型的引用,不能定义指向引用类型的指针变量

1.void &a=9;//错误

2.char c[6]="hello";char &rc[6]=c;//错误

3.int a=3;int &b=a;int *p=&b;//正确

int & *p=&a;//错误

4.int i=5;int *p = &i;int* &pt=p;//正确

5.int i=5;const int &a=i;//引用的值将无法修改,但变量本身可以修改,变量修改后引用的值将随之改变

6.int i=5; const &a=i+3;等价于int i=5;int temp=i+3;const int &a=temp;

(8)内置函数:在编译时将调用函数的代码嵌入到主函数中以提高执行效率,函数用inline修饰;

(9)动态分配撤销内存运算符new和delete:Student *p;p = new Student;delete p;//Student为结构体。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: