【C++】从C过渡到C++~

#include<iostream>
using namespace std;
int main()
{
    cout<<"This is a C++ program.\n";
    return 0;
}

程序运行时输出:This is a C++ program.

1)、首先我们可以看出程序的头文件变了,跟C语言的不一样,那是因为使用cout 需要用到头文件iostream。
2)、我们看见C++的输出语句也变成了cout。cout由c和out组成,称为输出流对象。“<<”是”插入运算符“,与cout 配合使用。C++系统将输出流cout 的内容输出到系统指定的设备(一般为显示器)中。输入流对象则为cin,”>>”是”提取运算符“,与cin 配合使用。与此之外,c++是可以使用printf进行输出的,但是这里学习的是C++,最好还是不要使用它。
3)、程序的第二行”using namespace std;“的意思是”使用命名空间std“。C++标准库内的类和函数,是在命名空间std中申明的,因此程序中如果使用C++标准库中的有关内容(此时需要#include命令行),就需要使用“using namespace std;”语句作为申明,表示要用到命名空间std中的内容。如果程序中需要输入或输出时,不仅需要加上头文件#include <iostream>,还需要加上“using namespace std;“语句,以便使程序能够用到相关信息,否则程序编译时将会出错。

C++有三个特性:封装性,多态性,继承性。

多态性指的就是重载
重载的意思就是重新赋予一个东西新的含义,即一个名字不同作用。我们会发现c语言中几个不同的函数名做的却是同一类操作。C语言规定在同一作用域中不能有同名的函数,而C++不同,允许有同名的函数在同一作用域内定义,但这些函数的参数个数以及参数类型不能相同,同名的函数来实现不同的功能,这样的做法叫函数的重载,即一个函数名多用。

C++具有默认缺省参数的功能。
一般情况下,在函数调用时形参会从实参那里取值,因此形参的个数需要与实参的个数一致。但有时调用函数时使用的是同一个值,C++提供给形参一个默认值,这样就不会重复赋值了。
例如:

float area(float r = 6.5);//指定值为r=6.5,调用时不必给值
//直接调用
area();
//若不想使用默认值,可通过实参给出
area(6);//此时形参得到的值为6,而不是6.5

形参与实参的结合是自左向右的,第一个实参必与第一个形参结合,以此类推,所以在指定缺省值的参数必须放在形参列表中的最右端,并且也不能从中间给值,否则会出错。
使用带有默认参数的函数时需要注意:
(1)、如果函数的定义在函数调用之前,则应在函数定义时给出默认值。
(2)、一个函数不能既做重载函数,又做有默认参数的函数。不然会出现二义性。

引用:
引用时C++对C一个重要的扩充。引用就相当于一个别名。建立”引用“的作用就是为一个变量起另一个名字,以便在需要时可以方便间接的引用该变量。对一个变量的”引用“的所有操作,实际上都是对原来的变量的操作。

int a;
int &b=a;//声明b是一个整型变量的引用变量,它被初始化为a

注意:由于引用不是独立的变量,编译系统不会给它分配存储单元,因此在建立引用时只有声明,没有定义,只是声明它和原有的某一变量的关系。

进一步说明
(1)、引用不是一种独立的数据类型,它必须与某一类型的数据相联系。声明引用时必须指定它代表的是哪个变量。
(2)、引用所代表的变量与原变量使用的是同一内存单元,原变量发生变化则引用的也相应发生变化。
(3)、如何区分&是取地址还是引用。如果&之前有类型符时,则是对引用的声明;如果前面没有类型符,则为取地址运算符。
(4)、对引用初始化后,可以用变量名也可以用引用。
(5)、引用若已经被初始化,则不能再被其他的变量做引用。

将引用做函数参数
C++增加引用主要是利用它作为函数参数,以扩充函数传递数据的功能。
(1)、将变量名作为实参。这时传给形参的是变量的值。传递是单向的,在执行函数时形参值发生变化并不传回给实参,因为在调用函数时,形参和实参不是同一个存储单元。
(2)、传递变量的指针。
(3)、传送变量的别名。

其余补充

不能建立void类型的引用
不能建立引用的数组
可以将变量的引用的地址赋给一个指针,此时指针指向的是原来的变量。
可以建立指针变量的引用。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值