C++入门基础知识

来源:互联网 发布:淘宝店铺包邮怎么设置 编辑:程序博客网 时间:2024/05/21 07:42

1.命名空间:也叫名字空间,名字空间域是随着标准C++引入的,相当于一个更加灵活地文件域(全局域),可以用花括号把文件的一部分括起来,并有关键字namespace开头给它起一个名字。名字空间域解决全局命名冲突的问题。

2.C++基本的输入输出流:

cin:标准输入流对象,键盘为其对应的标准设备。

cout:标准输出流对象,显示器为标准设备。

cerr和clog:标准错误输出流,输出设备是显示器。

<<是输出操作符,>>是输入操作符。

3.重载(C++为什么支持重载?):在同一作用域内,一组函数的函数名相同,参数列表不同(个数相同,类型不同),返回值可同可不同。

例如一个函数的声明:void  ADD(int x,double y);

在C语言中,经过编译器编译之后在库中的名字为_ADD;

在C++中,经过编译器编译之后在库中的名字为_ADD_int_double;

另一个函数的声明为:void  ADD(double x,int y);

在C语言中,经过编译器编译之后在库中的名字为_ADD;

在C++中,经过编译器编译之后在库中的名字为_ADD_double_int;

在链接时,都是找名字链接的,比如以上两个函数,在C语言中两个名字一样就会报错,但是在C++中不一样,不会报错。

4.C++缺省参数:全缺省参数和半缺省参数,全缺省参数是指函数定义时全部参数初始化,半缺省参数是指函数定义时只初始化一部分。

5指针和引用:指针是编程语言中的一个对象,利用地址,它的值直接指向存在电脑存储器中另一个地方的值。引用不是定义一个新的变量,而是给已经定义的变量重新起个别名;指针用*定义,引用用&;两者都有值传递,值传递是都是生成临时变量接受实参的值,引用作为参数时,如果形参为引用类型,那么形参就是实参的别名;传值返回时,是将ret值放到eax寄存器中,传引用返回时,是取ret的地址到eax寄存器中;

引用和指针的区别和联系:

(1)引用只能在定义时初始化一次,之后不能改变指向其它变量;指针变量的值可变。

(2)引用必须指向有效的变量,指针可以为空。

(3)sizeof指针对象和引用对象的意义不一样,sizeof引用得到的是所指向的变量的大小,而sizeof指针是对象地址的大小。

(4)指针和引用自增(++)自减(--)意义不一样。

(5)相对而言,引用比指针更安全。








原创粉丝点击