c++的前世今生
C++ 语言是本贾尼·斯特劳斯特鲁普 在1982 年发明的,早期版本被称为C with Classes,之后在1983年更名为C++。
C++语言在发明后很快就获得了广泛的应用,由于其具有高效、灵活和兼容性强的特点,成为了许多领域的首选编程语言。在计算机科学和工程领域,C++语言被广泛用于开发操作系统、网络应用、嵌入式系统、游戏开发等领域。
C++语言在 1998 年被国际标准化组织(ISO)正式接受为标准,称为C++98标准。该标准对语言的基本要素进行了定义,并规定了C++编译器实现必须具有的标准功能。
自1998年以来,C++语言已经经历了多次标准的更新和升级,最新的标准版本是C++20。新版本的标准加入了许多新特性,例如lambda表达式、自动类型推断、范围for循环等等,这些功能使C++语言更加灵活和易于使用。
与此同时,C++社区也发展出了一系列相关工具和框架,如STL(标准模板库)、Boost、Qt等等,这些工具和框架极大地推动了C++语言的发展和应用。
总之,C++语言的前世是在本贾尼·斯特劳斯特卢普实验室里创造出的,经过数十年的发展和完善,成为了一门功能强大、灵活多样、应用广泛的编程语言,对于现代计算机科学和工程领域有着不可替代的地位。
从上图可以看出c plus plus、c、java三中语言都很稳,python、c#后起之秀,但c#从2018年之后开始和python拉开差距,主要是因为18年开始大数据,人工智能火起来了,适合处理数据的python语言乘风破浪,一展头角!就问c++程序员们慌不慌!其他语言一个个都这么秀,那c plus plus到底能干什么呢?会不会被替代掉呢?我们花几分钟时间谈谈使用c plus plus可以用来做什么。
(1)高性能应用
(2)游戏
(3)设备驱动
(4)网络浏览器
(5)服务器
(6)操作系统
虽然c plus plus在很多领域绽放,但也有很多人质疑它,认为它终会大江东去!如john smith提到的“c++ is dead!”。不过,在高性能方面,Java和c#等语言相比c++还是棋差一招的!
国外有哪些公司应用c plus plus?
- 谷歌:C++用于Google搜索、Gmail、Chrome、Android等产品的开发。
- Facebook:C++用于Facebook核心服务和开源项目,如React Native、HHVM和ROCKSDB等。
- 微软:C++用于Windows操作系统、Visual Studio IDE和应用程序开发等方面。
- 亚马逊:C++用于Amazon Web Services(AWS)和http://Amazon.com的一些核心系统和应用程序的开发。
- NVIDIA:C++用于GPU加速、人工智能和深度学习等方面。
- 摩根士丹利:C++用于金融软件和算法交易系统的开发。
- 游戏公司:C++被广泛用于游戏开发,如EA、Ubisoft、Activision、Blizzard等等。
- 汽车公司:C++用于汽车软件和控制系统的开发,如Ford、BMW、General Motors、Toyota等等。
- 航空航天公司:C++用于航空航天程序和系统的开发,如NASA、Lockheed Martin、Airbus等等。
以上只是列举了一部分使用C++的大公司,C++在许多领域都有广泛的应用。
国内有哪些公司应用c plus plus?
- 腾讯:C++在腾讯QQ、微信、游戏、广告和人工智能等方面有着广泛的应用。
- 百度:C++用于百度搜索、百度地图、自动驾驶、人工智能和机器学习等方面。
- 阿里巴巴:C++在阿里云、淘宝、支付宝、一些大数据和人工智能项目中有着广泛应用。
- 华为:C++在华为的手机、芯片、网络设备、云计算等方面都有着广泛的应用。
- 小米:C++在小米手机、智能家居、游戏等方面有着广泛的应用。
- 360:C++用于360安全卫士、游戏等产品的开发。
- 美团:C++在美团点评、美团外卖等应用程序的开发中有着广泛的应用。
- 头条:C++在今日头条、抖音、西瓜视频等应用程序的开发中也有着广泛的应用。
- 有赞:C++用于有赞商城以及一些自动化测试和性能测试等方面。
- 各大银行,银行也有c plus plus项目哦
学习c++,首先需要做的两件事也是最基本的是:
(1)c++语言本身
学习c++基本语法知识!
#include<iostream>
int main()
{
std::cout << "Hello, World!" << std::endl;
return 0 ;
}
(2)c++标准库--STL
这是c++提供的预先编写好的代码集合,其提供许多应用程序所需的基本功能,如,数据结构(告诉你如何存储及管理数据)、算法(对于存储的数据如何高效搜索、排序等等)。几乎每个应用程序都会用到这些功能。学会了STL,那么每次我们构建应用程序时,无需自己实现数据结构,无需自己写排序算法、插入算法、存储算法等。我们可以重用标准库中的这些代码来快速构建应用程序。标准库-STL非常庞大,内容很多,没必要全部学会,一头扎进去学习只会让你abandoned,选择你感兴趣的部分仔细学一学,剩下的等用到的时候再学一点都不迟!就像电视机遥控器,说实话上面有多少个按键,每个按键具体功能,我到现在页搞不出清楚,但是我会用它放电视呀!等有其他需求时再了解其他按键功能,迟嘛?
int main()
{
std::map<std::string, int> map_test;
map_test["something"] = 69;
map_test["anything"] = 199;
map_test["that thing"] = 50;
std::cout << "map_test= ";
}
接下来的学习过程中,将展示在学习c++的同时编写一些非常酷的程序!