温馨提示:本篇文章乃博主多次学习后的总结,此中一些专业名词的概念不会做先容,本篇文章只办理实操题目
c到c++中,语法上得到了很多升级,那么哪些地方升级了,我们来快速复习一下
目次
头文件的升级
定名空间
界说方式
本质
定名空间使⽤
输入和输出
输入
变量名输入
数组输入
平常数组的输入
字符串的输入
输出
平常输出
数组的输出
缺省参数
概念
种类
半缺省
全缺省
函数重载
// 1 、参数范例差异
// 2 、参数个数差异
// 3 、参数范例次序差异
错误的函数重载
引用
概念
界说
特性
引用的利用
const引用
引用和指针的关系
inline
nullptr
头文件的升级
c语言的头文件<stdio.h>包罗了输入以及输出,固然啦在vs中还必要再加上一串特殊的代码才气包管scanf正常利用
c++头文件<iostream>包罗了输入和输出,但并没有利用库,因此当利用cin和cout时仍旧会报错,那么怎样办理这种题目呢?方法一利用using namespace std; 方法二利用辩位符(::),如果你乐意也可以叫它冒号双胞胎,那么只要是碰到std库包罗的东西就必须在它的前面加上std::
定名空间
界说方式
namespace 空间名
{
}
本质
界说出⼀个域,这个域跟全局域各⾃独⽴,差异的域可以界说同名变量
定名空间使⽤
1.指定定名空间访问, 即:定名空间: 辨位符)
2.using将定名空间中某个成员睁开, 即在main函数上面添加using namespace 空间名;
输入和输出
输入
变量名输入
cin >> a;
数组输入
平常数组的输入
for(int i = 0; i < sz(数组的长度);i++)
{
cin >> a;
}
字符串的输入
cin >> a;//这个a是数组名。
输出
平常输出
cout << 变量名 << endl;
数组的输出
for(int i = 0; i < sz(数组的长度);i++)
{
cout << a;
}
缺省参数
概念
声明或界说函数时为函数的参数指定⼀个缺省值。
种类
半缺省
概念:函数的部分形参有缺省值
注意:必须从右往左依次一连缺省,不能隔断跳跃给缺省值。
样例:
void Func2(int a, int b = 10, int c = 20)
{
cout << "a = " << a << endl;
cout << "b = " << b << endl;
cout << "c = " << c << endl << endl;
}
全缺省
概念:函数的部分形参有缺省值
样例:
void Func1(int a = 10, int b = 20, int c = 30)
{
cout << "a = " << a << endl;
cout << "b = " << b << endl;
cout << "c = " << c << endl << endl;
}
函数重载
概念:在同⼀作⽤域中出现同名函数,但是要求这些同名函数的形参差异,可以是参数个数差异大概范例差异。
// 1 、参数范例差异
int Add(int left, int right)
{
cout << "int Add(int left, int right)" << endl;
return left + right;
}
double Add(double left, double right)
{
cout << "double Add(double left, double right)" << endl;
return left + right;
}
// 2 、参数个数差异
void f()
{
cout << "f()" << endl;
}
void f(int a)
{
cout << "f(int a)" << endl;
}
// 3 、参数范例次序差异
void f(int a, char b)
{
cout << "f(int a,char b)" << endl;
}
void f(char b, int a)
{
cout << "f(char b, int a)" << endl;
}
//4、 const修饰
错误的函数重载
void f1()
{
cout << "f()" << endl;
}
void f1(int a = 10)
{
cout << "f(int a)" << endl;
}
注意:函数重载只与参数有关
引用
概念
引⽤不是新界说⼀个变量,⽽是给已存在变量取了⼀个别名,固然它的本质照旧传地点
界说
范例& 引⽤别名=引⽤对象;
特性
1.引⽤在界说时必须初始化
2.⼀个变量可以有多个引⽤
3.引⽤⼀旦引⽤⼀个实体,再不能引⽤其他实体
总结:引用必须初始化,变量支持多引用,只能引用一个实体
引用的利用
引⽤在实践中重要是引⽤传参和引⽤做返回值中镌汰拷⻉提⾼服从和改变引⽤对象时同时改变被 引⽤对象。
引⽤传参跟指针传参功能是类似的,引⽤传参相对更⽅便⼀些。
总结:可以镌汰拷贝从而进步服从,改变引用对象的同时,被引用对象也会被改变
样例:
void Swap(int& rx, int& ry)
{
int tmp = rx;
rx = ry;
ry = tmp;
}
const引用
const引用的对象可以是必须要const引用的对象或平常对象,对象的访问权限在const引⽤过程中只会缩小
引用和指针的关系
1.概念上,引用是给一个变量取别名,指针是存储一个变量的地点
2.初始化方面,引用必须初始化,指针发起初始化(也就是可以不初始化,但大概会出现一些题目)
3.引用:引用了一个对象后,不能再引用其他对象 指针:可以不停地厘革所指向的对象
4.引用:直接指向一个对象 举例:在函数中利用引用后,形参改变后,实参也会改变
指针:必要解引用才气指向对象 举例:在函数中利用指针后,实参必要靠返回的指针才会改变
5.指针大概会出现空指针和野指针的题目,引用很少出现
6.sizeof中寄义差异,引⽤结果为引⽤范例的⼤⼩,但指针始终是地点空间所占字节个数
inline
被inline修饰的函数叫内联函数,那么什么是内联函数?说白了就是将一些函数举行了折叠。
那么被它修饰的函数通常是那些短小且调用频仍的函数
被inline修饰的函数会在被调用处睁开
nullptr
比c的NULL更高级,更好用,更安全
那么本篇文章的内容,就先到这里了。我们下期见。
都看到这里了,点个赞吧!
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!qidao123.com:ToB企服之家,中国第一个企服评测及软件市场,开放入驻,技术点评得现金 |