C++语言详解


【全文大纲】 : https://blog.youkuaiyun.com/Engineer_LU/article/details/135149485


1 . 前言

2 . C++关键字

asmdoifreturntypedef
autodoubleinlineshorttypeid
booldynamic_castintsignedtypename
breakelselongsizeofunion
caseenummutablestaticunsigned
catchexplicitnamespacestatic_castusing
charexportnewstructvirtual
classexternoperatorswitchvoid
constfalseprivatetemplatevolatile
const_castfloatprotectedthiswchar_t
continueforpublicthrowwhile
defaultfriendregistertrue
deletegotoreinterpret_casttry

3 . C++语言运算符优先级

在这里插入图片描述

4 . 本质理解

首先要明白,我们为什么要学C++语言,作者当初学C++语言是为了Qt, 如果和我一样是嵌入式方向,则接下来看这篇文章的贴合度将达到100%,好了,废话不多说,直入正题。

4.1 内存

学C语言先不要管语法, 先让内存概念深入人心, 什么是内存 ?
这里举个“栗子”,地球上有70多亿人,每个人都属于大自然,我们从大自然中诞生,亦从大自然回归,每个人都属于大自然中的“内存”,我们最终回归大自然(相当于内存释放),而我们学习C++语言,就能成为一个领域的世间主宰,掌控“亿万”内存,想必看到这里,大家对内存已经有了独特的认识。

4.2 语法

前面提到了主宰者,那身为主宰者怎么掌控这些内存 ?
没有功法加持,就很难灵活调用,岂不荒废了这一身牛逼的功力,所以有前辈创出了这顶级功法“C++”!里面通过技能(语法)来操控世间万物(内存)。

5 . 语法应用

以下链接的博文全部 个人原创,由于C++的内容较多,因此拆分出以下分篇,点击可跳转对应博文,以下各分篇作者精心编写,简洁且清晰

小结 : C++相对C来说多了面向对象的特性,而面向对象的特点是继承,多态,封装,主要引入了类这个概念,而类相当于C的结构体声明而未定义的阶段,并且多了虚指针,虚表,类继承等概念,应用过程中根据上述链接的内容,可以构建出各对象内存交互的过程。

6 . 编译过程

6.1 预处理

#define macro 1
void func() {
	u8 x = macro;
}	

预处理阶段时把宏macro替换为1

6.2 编译

u8 x = macro;
MOVS r0, #0x01

编译阶段把C++语言转换成汇编内容

6.3 汇编

MOVS R0, #0x01
0x2001

汇编阶段把汇编指令根据当前平台转换成机器码

6.4 链接

程序中N条汇编机器码需要整合在一起,此时把这些机器码链接在一块输出最终可执行文件

7 . 小结

学习C++语言,有疑惑可以直接用Qt来验证程序,学语法的同时学框架,如果中途学习感觉到困惑有阻碍,不必忧心,放宽心态,多看多写,自然而然就明白了其中的逻辑,另外不必刻意背语法,写着写着自然就记住了,印象模糊时可来回顾一遍,看到这里,相信大家基本入门了。

如果喜欢,请关注一波,后续持续更新嵌入式实用内容,谢谢大家
技术交流群 : 745662457
群内专注问题答疑,项目外包,技术研究

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

极客 - L U

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值