IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> C++知识库 -> C++ 新增 -> 正文阅读

[C++知识库]C++ 新增


一、bool类型

C++ 新增数据类型是基本类型中的布尔型 bool 和构造类型的类 class 。
布尔常量 bool 仅有两个:

false   0true    1

关系运算符用于比较两个操作数的大小,其比较的结果是一个 bool 型的值。
当两个操作数满足关系运算符指定的关系时,表达式的值为 true,否则为false。

二、函数新增

1.默认值
有时需要用相同的实参反复调用同一函数,为了避免反复传递相同实参的信息, C++中允许函数定义默认的参数值。

如果一个函数中有多个参数,则设置参数默认值时,要求从右向左设置。当调用函数时,只能将实参从左向右为形参赋值,当实参数量少于形参数量时,形参从左向右与实参匹配,剩余形参则取默值。

注:当程序中既有函数的声明又有函数的定义时,默认参数只能在函数声明中给出,而定义中不允许设置默认参数。

2.函数的重载
函数的重载是指建立多个同名的函数,但函数的形参表必须互不相同。不相同可以是形参个数不同,也可是形参的类型不同,还可两者都不同。(返回值不是,形参名也不是),重载函数也可以带有默认值参数,但是要注意二义性。(注意歧义,会报错)

三、引用

1.引用的概念:引用是对一个变量或常量标识符起的别名。本身地址为引用变量的地址。

数据类型 &引用名 = 变量名; int &ra = a;

注:

  • 创建一个引用时,该引用必须被初始化。所以不能有空引用。
  • 不允许把为一个变量建立的引用重新用作另一变量的别名。
  • 对于 void 和 数组名不可以引用,但是可以对数组的某个元素的引用。
  • 不要返回指向局部变量或临时对象的引用。

2.指针和引用
(1)不同点:

  • 指针和引用对它们所指的或所引用的变量的操作方式不一样。
  • 指针的功能更强大,但同时也更不受控制。
  • 引用则是较高级地封装了指针的特性,它不直接操作内存地址,因而具有较高的安全性,也不易产生由于使用指针而常常产生的那些不易察觉的错误,不失为一种好的选择。

(2)相同点:都可以采用间接操作的手段对某个变量所代表的空间进行访问。

3.函数参数传递
(1)传值调用(单值传递)
函数传值调用是将实参的值传递给形参,形参和实参各自具有单独的存储空间,因此改变形参的值时,实参的值不会受到任何影响。

(2)传址调用
传址调用则传递的是变量的存储地址。实参是地址值,用地址常量或指针变量表示,形参是指针变量。
函数调用时系统将实参所表示的地址值赋给形参的指针变量,从而使得形参和实参的指针指向的是相同的存储地址。在被调用函数中,可以通过形参指针改变其所指向的元素。传址调用的实现机制就是可以通过改变形参所指向的变量值来影响实参。

(3)引用调用
使用函数的引用调用时,函数的实参用变量名,形参是引用类型。函数调用时,实参给形参赋值,对引用进行了初始化,引用是实参的别名。在被调用函数中,可以通过引用间接访问被引用的变量,所有在引用上施加的操作,实质上就是施加在被引用变量上的操作。引用调用可以通过形参引用改变被调用函数中被引用的实参变量的值。

四、C和C++的不同

在很大程度上,C++是C的超集,这意味着一个有效的C程序也是一个有效的C++程序。C和C++的主要区别是,C++支持许多附加特性。但是,C++中有许多规则与C稍有不同。这些不同使得C程序作为C++程序编译时可能以不同的方式运行或根本不能运行。
例如:

  • 在C++中,函数原型必不可少,但是在C中是可选的。
  • C把char常量视为int类型,而C++将其视为char类型。
  • 在C中,全局的const具有外部链接,但是在C++中,具有内部链接。
  • 在C++中,可以使用const值来初始化其他const变量,但是在C中不能这样做。
  C++知识库 最新文章
【C++】友元、嵌套类、异常、RTTI、类型转换
通讯录的思路与实现(C语言)
C++PrimerPlus 第七章 函数-C++的编程模块(
Problem C: 算法9-9~9-12:平衡二叉树的基本
MSVC C++ UTF-8编程
C++进阶 多态原理
简单string类c++实现
我的年度总结
【C语言】以深厚地基筑伟岸高楼-基础篇(六
c语言常见错误合集
上一篇文章      下一篇文章      查看所有文章
加:2021-12-08 13:38:17  更:2021-12-08 13:39:20 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 10:59:02-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码