本文介绍: C++入门篇(零) C++入门篇概述一、C++概述1. 什么是C++2. C++的发展史3. C++的工作领域4. C++关键字(C++98)二、C++入门篇导论

目录

一、C++概述

1. 什么是C++

2. C++的发展史

3. C++的工作领域

4. C++关键字(C++98)

二、C++入门篇导论


一、C++概述

1. 什么是C++

        C++是基于C语言而产生的计算机程序设计语言支持多重编程模式,包括过程程序设计数据抽象面向对象程序设计泛型程序设计设计模式等。


        C语言结构化模块化语言,适合处理较小规模的程序。对于复杂问题,规模较大的程序需要高度抽象建模时,C语言则不合适。为了解决软件危机, 20世纪80年代计算机界提出了OOP(object oriented programming面向对象)思想,支持面向对象程序设计语言应运而生。

        1982年,本贾尼博士(Bjarne Stroustrup)在C语言的基础上引入并扩充了面向对象概念,发明了一种新的程序语言。为了表达该语言与C语言的渊源关系命名为C++。因此:C++是基于C语言而产生的计算机程序设计语言,它既可以进行C语言的过程程序设计,又可以进行以抽象数据类型为特点的基于对象程序设计,还可以进行面向对象程序设计

2. C++的发展

        1979年,贝尔实验室的本贾尼等人试图分析unix内核时候,试图将内核模块化,于是在C语言的基础上进行扩展,增加了类的机制,完成了一个可以运行的预处理程序,称之为C with classes至此C++已现雏形。

        C++的发展当然不是一蹴而就,许多让C++程序员又爱又恨的特性语法,就是随着C++的版本更迭逐步加入的。以下就是C++的历史版本,其中C++ 98 和 C++ 11 是两个影响深远的版本,这两个版本引入许多新的特性语法

3. C++的工作领域

        所有操作系统几乎都是C/C++
写的,许多大型软件背后几乎都是
C++
写的,比如
Photoshop
、Office
JVM(Java
虚拟机
)
等,究其原因还是性能高,可以直接操控硬件
        后台开发:主要侧重于业务逻辑处理,即对于前端请求后端给出对应响应,现在主流采用java
,但内卷化比较严重,大厂可能会有C++
后台开发,主要做一些基础组件中间件缓存分布式存储等。
        服务器端开发比后台开发跟广泛,包含后台开发,一般对实时性要求比较高的,比如游戏服务器流媒体服务器网络通讯等都采用C++开发的。

3.
游戏开发

        PC平台几乎所有的游戏都是
C++
写的,比如:魔兽世界、传奇、
CS
、跑跑卡丁车等,市面上相当多的游戏引擎都是基于C++
开发的,比如:
Cocos2d
、虚幻
4

DirectX
等。三维游戏领域计算量非常庞大,底层的数学全都是矩阵变换,想要画面精美、内容丰富、游戏实时性搞,这些高难度需求无疑只能选C++语言。比较知名厂商腾讯网易、完美世界、巨人网络等。
        嵌入式:就是把具有计算能力的主控嵌入机器装置或者电子装置的内部,能够控制这些装置。比如:智能手环、摄像头扫地机器人智能音响等。
谈到嵌入式开发,大家最能想到的就是单片机开发
(
即在
8
位、
16
位或者
32
单片机产品或者裸机上进行的开发)
嵌入式开发除了单片机开发以外,还包含
soc
片上、系统层面、驱动层面以及应用中间件层面的开发。
        常见的岗位有:嵌入式开发工程师驱动开发工程师系统开发工程师、Linux
开发工程师固件开发工程师等。
        数字图像处理中涉及到大量数学矩阵方面的运算,对CPU
算力要求比较高,主要的图像处理算法库和开源库等都是C/C++
写的,比如:
OpenCV

OpenGL
等,大名鼎鼎的
Photoshop
就是
C++
写的。
        一提到人工智能大家首先想到的就是python
,认为学习人工智能就要学习
python
,这个是误区,python中库比较丰富,使用
python
可以快速搭建神经网络、填入参数导入数据可以开始训练模型了。但人工智能背后深度学习算法核心还是用C++
写的。
        近年来移动互联网的兴起,各应用数据量业务量不断攀升;后端架构要不断提高性能并发能力才能应对大信息时代的来临。在分布式领域,好些分布式框架文件系统、中间组件等都是C++
开发的。对分布式计算影响极大的Hadoop
生态的几个重量级组件
HDFS

zookeeper

HBase
等,也都是基于Google
C++
实现
GFS

Chubby

BigTable
。包括分布式计算框架
MapReduce
也是
Google
先用C++实现一套,之后才有开源
java
版本

        除了上述领域外,在:科学计算浏览器流媒体开发、网络软件等都是C++比较适合的场景,作为一名老牌语言的常青树,C++一直霸榜编程语言5名,肯定有其存在的价值。

4. C++关键字(C++98)

C++98总计63个关键字,其中包含C语言的32个关键字(图中深色区域): 


二、C++入门篇导论


————————END————————-

才疏学浅,谬误难免,欢迎各位批评指正。

原文地址:https://blog.csdn.net/look_outs/article/details/134735682

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_23122.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注