缘来

由于某个不可告人的目标以及想趁着还有精力的年龄,开始了C++学习之路。C++ 诞生很多年了,但依然具有强大的生命力。

我们来看下2020年8月TIOBE 8 月编程语言排行榜。



可以看到C以及C++以旺盛的生命力排在前几名。园子里每逢看到.neter学习java便是一顿腥风血雨。

此时我们不讨论java,就来整理下C++,偶尔也会兼顾下C。进而通过C/C++了解一下更其他的东西,比如数据结构,比如计算机网络。

了解历史

C++语言是有B吉Bjarne Stroustrup 于1979年在美国贝尔实验室开始设计开发的。1985年推出C++1.0版。1989年和1993年,推出了很多新功能的C++2.0版和C++3.0版相继问世。1998年C++的ANSI/ISO标准被投入使用,这是C++标准第一版,称为C++98.通常这个版本的C++被认为是标准C++。所有主流的C++编译器都支持这个版本的C++。

版本 标准名称 发布年份
第一版 C++98 1998年
第二版 C++03 2003年
第三版 C++11 2011年
第四版 C++14 2014年
第五版 C++17 2017年

C语言是C++语言的前身,在进一步扩充和完善C语言的基础得到C++语言。C++语言最初被命名为带类的C语言,由此可见两者之间的渊源,直到1983年才更名为C++。可以将C++语言看做是C语言的一个超集,C语言中的绝大部分语法成分都被保留了下来,实时上,标准的C程序也可以在C++语言的开发环境下运行。

资源

经过一周时间的积累,我搜索了几个学习的途径。

可以学习的网站-B站

C++教程从0到1入门编程

由于B站资源可能由于版本等其他原因被下架,可以通过win10客户端 哔哩哔哩动画开启下载,完成备份。

世界最大同性交友网站- GitHub

interview

C++ 匠心之作 从0到1入门资料

对于成系列学习最好的方式肯定是书籍和视频以及后续的总结了,以上两点能满足我的需要了。

环境简介

IDE/编辑器

这里会用VsCode作为IDE来进行开发学习。常用的IDE还有DevC++,CodeBlocks,VS2017/2019。

编译器

本系列文档编译器会使用GCC。下面来一段简介

(GNU Compiler Collection,GNU编译器套装),是一套由 GNU 开发的编程语言编译器。它是一套以 GPL 及 LGPL 许可证所发行的自由软件,也是 GNU计划 的关键部分,亦是自由的 类Unix 及苹果计算机 Mac OS X 操作系统的标准编译器。

GCC(特别是其中的C语言编译器)也常被认为是跨平台编译器的事实标准。

GNU编译器套件包括C、C++、 Objective-C、 Fortran、Java、Ada、Go语言前端等,也包括了这些语言的库(如libstdc++,libgcj等。)。

安装

1.进入官网 www.mingw.org



2.点击下载downloads

后续安装步骤参考

win10下MinGW的安装与配置(详细步骤)

windows下安装MinGW的配置

VsCode 配置参考如下文档

WIN下vscode调试C/C++,从零开始生成helloworld项目

VSCode用Code Runner编译运行c/c++

中文乱码问题参考:

mingw控制台中文乱码

通过以上步骤可以搭建一个C++环境。

大纲

C++语言简介

面向对象的基本概念(略)

类和对象进阶(略)

运算符重载(略)

类的继承与派生(略)

多态与虚函数(略)

输入/输出流(略)

文件操作(略)

函数模板与类模板(略)

废话

通过最近几年的经验发现,有时候自己学习也许很容易,但把自己学会的东西如何输出是一个挑战。何况自己真的学会了么?还是半瓶子不满一瓶子晃荡的水平?

现在还处于接受别人鱼的阶段,如何取“授人以渔”?那一定是多总结多思考。

第一步定义受众。

第二步定义一个框架,增补遗漏知识。

第三步输出

第四步接受反馈改进。

以上文档的受众先定义为我自己吧。我希望我可以只通过这个文档就能入门C++。谢阅。这篇很杂,链接一堆,正如我的心情。

C++入门记-大纲的更多相关文章

  1. C++入门记-构造函数和析构函数

    前文回顾 本文档环境基于Vscode + GCC + CodeRunner 关于C++的环境搭建请参考下面链接: C++入门记-大纲 由于本人具有C#开发经验,部分相同的知识就不再赘述了.只列一下需要 ...

  2. Java入门记(五):容器关系的梳理(下)——Map

    注意:阅读本文及相关源码时,需要数据结构相关知识,包括:哈希表.链表.红黑树. Map是将键(key)映射到值(value)的对象.不同的映射不能包含相同的键:每个键最多只能映射到一个值.下图是常见M ...

  3. STC 核心板 入门记

    写在开始 STC核心板,它的软件十分全面,想要什么都有,非常适合新手入门. 上一次电赛刚结束,现在反正也啥也不太会,干脆学个这个吧. 顺便写篇博客记录一下. 记录第一次烧写 周四下单,周六到货.中午拿 ...

  4. Java入门记(四):容器关系的梳理(上)——Collection

    目录 一.Collection及子类/接口容器继承关系 二.List 2.1 ArrayList 2.1.1 序列化的探讨 2.1.2 删除元素 2.1.3 调整大小 2.2 Vector和Stack ...

  5. Java入门记(三):初始化顺序

    初始化顺序的规则 1.在一个类的对象实例化时,成员变量首先初始化,然后才调用构造器,无论书写顺序.如果调用构造器前,没有显式初始化,那么会赋默认值. 这样做法的原因可以理解为:构造器执行时可能会用到一 ...

  6. Java入门记(二):向上转型与向下转型

    在对Java学习的过程中,对于转型这种操作比较迷茫,特总结出了此文.例子参考了<Java编程思想>. 目录 几个同义词 向上转型与向下转型 例一:向上转型,调用指定的父类方法 例二:向上转 ...

  7. Java入门记(一):折腾HelloWorld

    HelloWorld,学习每门语言的第一步.有人戏称,这些年的编程生涯就是学习各种语言的HelloWorld,不知是自谦还是自嘲.目前所在的公司使用Java作为主要开发语言,我进行语言转换也大半年了, ...

  8. ACM入门记

    [2015.12]零基础进队 [2016.4.10]浙大第十六届程序设计大赛 [2016.6.4]团体程序设计天梯赛初赛 [2016.7.16]团体程序设计天梯赛决赛 赛后总结:比赛的时候好慌,一道题 ...

  9. Docker入门记1

    Docker是一个部署容器技术,它出现的目的主要解决开发人员在本机开发的时候安装的各类类库等一系列运行程序的包啊库啊,然后把这些引用的第三方类库和操作系统需要的配置打包起来,形成一个原子环境,然后部署 ...

随机推荐

  1. CF R 209 div 2 CF359B Permutation 构造

    LINK:Permutation 休闲一下 开了一道构造题. 看起来毫无头绪 其实仔细观察第二个条件 0<=2k<=n. 容易想到当n是奇数的时候 k的范围更小 再手玩一下第一个条件 容易 ...

  2. day6. while双项循环及for循环

    一.双向循环经典练习 1.打印十行十列小星星(2个循环) # j 外循环用来控制行数 j = 0 while j<10: # 打印一行十个星星 i = 0 while i <10: # 写 ...

  3. IntelliJ IDEA 修改内存大小,使得idea运行更流畅。(转发)

    原文地址:https://blog.csdn.net/qq_27093465/article/details/81947933 idea有个配置文件,可以设置内存大小的,就跟咱的jvm的内存里面的堆大 ...

  4. Android常用布局和控件

    一.Android常用布局属性 1. LinearLayout的特有属性 android:orientation:设置布局排列方式   android:layout_weight:设置所占布局的权重  ...

  5. java验证工具类(待验证)

    /** * <判断对象是否为null或者空> * * @param obj * 需要判断的对象 * @return 如果对象为null或者空则返回true */ public static ...

  6. mapper.xml文件中传入list参数报错 ‘ ’附近有语法错误

    mapper.xml文件中传入list参数,使用foreach循环遍历值,但是在遍历的过程中出错了,具体代码如下所示 mapper.xml <select id="selectByCo ...

  7. 面试官:怎么做JDK8的垃圾收集器的调优?

    面试官:怎么做JDK8的垃圾收集器的调优? 看着面试官真诚的眼神,心中暗想看起来年纪轻轻却提出如此直击灵魂的问题.擦了擦额头上汗,我稍微调整了一下紧张的情绪,对面试官说: 在JDK8中有Serial收 ...

  8. kafka-clients 1.0 高阶API消费消息(未完)

    消费消息的请求(按序) org/apache/kafka/common/requests/RequestHeader org/apache/kafka/common/requests/ApiVersi ...

  9. 【HNOI2015】菜肴制作 - 拓扑排序+贪心

    题目描述 知名美食家小 A被邀请至ATM 大酒店,为其品评菜肴. ATM 酒店为小 A 准备了 N 道菜肴,酒店按照为菜肴预估的质量从高到低给予1到N的顺序编号,预估质量最高的菜肴编号为1. 由于菜肴 ...

  10. CVT1100 错误的修复 2009-10-12 11:38

    我们在用VS2005编译MFC工程时极少会出现如下错误: 一,CVTRES : fatal error CVT1100: 重复的资源.type:MANIFEST, name:1, language:0 ...