C++学习过程第一天

一、为什么要学习c++?

因为在嵌入式设备的图形界面的应用程序开发基本上使用的都是Qt,而QT使用的编程语言是c++。

二、c++的应用领域?

嵌入式、游戏、服务器、人工智能等等。

三、课程目标?

  1. 掌握c++的基本语法;
  2. 转变编程思想;
  3. 做出一个c++的项目;

四、c++与c的关系?

C++就是在c的基础之上又增加了很多内容,也就是c++是完全兼容c的,加了哪些东西呢?

  1. C++在c的基础之上增加了很多新的特性
  2. 编程思想的转变,c语言是面向过程的,c++是面向过程+面向对象的,也就是c++的面向过程是为了实现面向对象

五、c++新增特性

5.1命名空间

在同一个作用域内,如果出现相同的变量名、函数名等等,c语言会报错,因为出现了命名冲突,特别是不同的人/公司负责不同的模块,也容易出现命名冲突的问题,所以如何解决呢?

C++提出了命名空间的概念,就是给函数名、变量名。。。又加了一层作用域的限制,就可以解决这个问题

定义:

Namespace 命名空间名

{

     变量;

     函数;

     类型名;

     。。。。

};

访问方式:

  1. 作用域::
  2. Using namespace 命名空间名;

一般情况下,模块化编程时,命名空间的定义一般是在.h文件中,所以我们要使用某个命名空间,需要加上#include “XXX.h”、using namespace XXX;

总结:命名空间是用来解决命名冲突的

 

5.2标准输入输出流

对流进行操作就是在对文件进行操作

键盘 >> 标准输入流 >> 变量;
显示屏 << 标准输出流 << 变量;

我们只需要对流进行操作就ok

C++已经定义好了标准输入流和标准输出流的对象,cin和cout,在iostream头文件中的std的命名空间中定义的

所以:想要使用cin和cout,需要加:

#include <iostream>

Using namesapce std;

Cin >> a;

Cout << a;

5.3引用

Int add(int a, int b)

{

Return a+b;

}

Int x = 10, y = 5;

Add(x, y);

两个需求:

  1. 在函数调用时,不需要再开辟临时的空间来保存实参的值
  2. 弱化指针的使用

引用:就是变量的别名,操作引用就是在操作变量本身

如何理解:定义了一个变量,产生了一块内存空间,变量名就是这个空间的名字,还可以继续给这个空间起其他的名字,其他名字就是引用,而且一块空间可以又很多名字,也就是空间只有一块,但是有很多名字,通过任何一个名字都可以访问这块空间

定义引用:数据类型 &引用名 = 变量名;

Int a;

Int &b = a;

Int &c = a;

Int &d = b;

总结:

  1. 引用不会产生新的空间
  2. 引用必须初始化
  3. 一个变量可以有多个引用,引用也可以有引用

常引用:使用const修饰的引用---只读

指针和引用的区别?

本质的区别:指针要开辟空间,它存放的是变量的地址,访问变量属于间接访问,引用不开辟空间,是变量的别名,是直接访问

使用时的区别:

总结:引用就是变量的别名,操作引用就是在操作变量

5.4函数重载

函数功能类似,函数名相同,参数不同(参数的个数、类型),与返回值无关,这些函数就互为重载

函数重载的原理:因为函数的本质就是一段连续空间的二进制代码,在运行时,存在内存中,函数名就是这段二进制代码的首地址,所以不同的二进制代码首地址肯定是不一样的,也就是函数名必须不一样,而c++中函数名却可以一样,实际上是在编译时编译器会对每个函数进行重命名,所以本质上函数名还是不一样的,只不过对于我们写代码的人而言,看起来是一样的,让我们写代码和调用更加方便。


 

 

5.5默认参数

参数:指的是函数的形参

默认参数:在定义函数时函数的形参有默认值

5.6c++如何调用c库的函数

 

 

 

总结:

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值