c++ 核心知识-基于c++ primer第5版

如果一味的记录语法,为什么要我来说呢?而且学习编程语言重要的学会知识的核心,背后的逻辑和思想。记住一点,背后的逻辑和思想是为了解决问题而产生的。
c++ primer第5版的第一章,后续我只会写第几章,不会再指明是依据c++primer第5版了。
第一章实际上是一些初步的介绍,初步的介绍了初学者的一些操作,基本的输入输出,函数,以及C++的核心类的初步介绍。
背后的核心和可以自我提问和回答的东西我觉得有这些。

  1. main函数,为什么一定要有main函数,很多人会告诉你一定要有main函数,为什么?可能也有一部分人有跟我一样的疑问。其实很简单这是一个规范,一个协议(我第一次提到这个,但是记住这也是核心思想)。编程语言允许我们定义很多函数,但是需要告诉编译器,我们的事情该从哪个函数开始。我印象中visual studio编译器是允许指定其他函数为开始的函数的。所以main函数这个协议的内容是:编译器:我需要你定义一个main函数,并且故事从main函数开始。编写者:好的,这里是main函数,你把这里的故事放在开始吧。
  2. 编译,编辑,IDE,编译器,运行,一股脑说了5个词,我也没有注意先后顺序。首先我们讲个linux开发的故事,很多人(其实是我自己)在刚进入linux开发世界的时候,总是在纠结我要怎么搭建开发环境,然后高手就跟我们说什么vim,emcas什么的高端玄幻(其实只是我们不熟悉,所以觉得玄幻而已)的东西了。其实只要掌握了我这里说的核心思想,就不会有类似的困惑了。当然只是没有困惑了,还是需要付出很大的努力去熟悉开发工具的,搭建自己的开发环境的。首先我们需要有一个编辑工具,写代码,编辑代码,拿什么写?工具很多,最简单的就是文本编辑器了,只不过格式处理(代码缩进,补全)上就不专业了。写代码实际上就是编辑代码的过程,代码是你编辑出来的。编辑好的代码就需要编译了,为什么要编译呢?你写的文本只有人类能看懂,机器看不懂。好吧不废话了,编译就是转换语言的过程,面试须知,编译的4个过程(预处理,编译,汇编,链接,先抛出来,后面细讲。)。编译器就是执行编译的程序,IDE就是集合了编辑工具,编译工具等的一整套解决方案,就是别人帮你把环境搞到一起,你一键安装就OK。运行就是执行程序,但是这里有个启动器的概念,就是操作系统给我们提供的一个界面,可以是图形的或者命令行的,我们可以通过这个启动器执行我们的程序,当然也是有规则的,后面细讲吧。好了,现在回到前面的故事,进入linux世界,我们要怎么搭建开发环境?其实没有那么多限制,重要的是自己要慢慢熟练,当然这里面也有进阶的过程。开始的时候我们用IDE就好,比如QT。要掌握QT为我们做了些什么事情,还有要编辑一些非代码的文件时,我们还是需要掌握vim,makefile这些东西,这是一个进阶的过程,不应该一步登天。
  3. 注释及风格,程序为什么需要注释,我们写代码的时候很多时候不愿意写注释,但这是不好的习惯。相关的话题不说了,主要还是想说有清晰的代码风格是很重要的事情,程序最主要的还是写给人看的,因为一个新手(在还没有成长为高手之前)需要别人别人指导我们代码逻辑优劣,如果写的不清不楚,别人懒得看,自然不会教你,每天能教你的就是把代码写清楚点,有什么意义?而且代码最好是拿出来评审的,这样可以集众人之力发现代码的漏洞,这也是开源思想中重要的核心。

原文地址:https://www.cnblogs.com/d-dream/p/12105377.html

时间: 2024-10-06 02:27:00

c++ 核心知识-基于c++ primer第5版的相关文章

【汇总】Python 编程核心知识体系

[汇总]Python 编程核心知识体系 大神著作,源自:https://woaielf.github.io/2017/06/13/python3-all/ 本文主要涵盖了 Python 编程的核心知识(暂不包括标准库及第三方库,后续会发布相应专题的文章). 首先,按顺序依次展示了以下内容的一系列思维导图:基础知识,数据类型(数字,字符串,列表,元组,字典,集合),条件&循环,文件对象,错误&异常,函数,模块,面向对象编程: 接着,结合这些思维导图主要参考的资料,分享一下我的学习体验,一方面

给你一份Spring Boot核心知识清单①-1

预警:本文非常长,建议先mark后看,也许是最后一次写这么长的文章 由于51博客对文章字符数的限制,不得已分成两篇文章 说明:前面有4个小节关于Spring的基础知识,分别是:IOC容器.JavaConfig.事件监听.SpringFactoriesLoader详解,它们占据了本文的大部分内容,虽然它们之间可能没有太多的联系,但这些知识对于理解Spring Boot的核心原理至关重要,如果你对Spring框架烂熟于心,完全可以跳过这4个小节.正是因为这个系列的文章是由这些看似不相关的知识点组成,

Hadoop新手学习指导之hadoop核心知识学习

上篇(Hadoop新手学习指导之入门需知)我们介绍了新手学习hadoop的入门注意事项.这篇来谈谈hadoop核心知识学习. hadoop核心知识学习: hadoop分为hadoop1.X和hadoop2.X,并且还有hadoop生态系统.这里只能慢慢介绍了.一口也吃不成胖子. 那么下面我们以hadoop2.x为例进行详细介绍: Hadoop的核心是mapreduce和hdfs. Mapreduce:mapreduce是很多人都需要迈过去的槛,它比较难以理解,我们有时候即使写出了mapreduc

大数据Hadoop核心知识入门学习注意事项

今天来介绍新手学习hadoop的入门注意事项.这篇文章一来谈谈hadoop核心知识学习. 首先hadoop分为hadoop1.X和hadoop2.X,并且还有hadoop生态系统,那么下面我们以hadoop2.x为例进行详细介绍: Hadoop的核心是mapreduce和hdfs. Mapreduce:mapreduce是很多人都需要迈过去的槛,它比较难以理解,我们有时候即使写出了mapreduce程序,但是还是摸不着头脑.我们都知道mapreduce是一种编程模型,那么它能干什么,对我有什么用

[转帖]一文读懂分布式架构知识体系(内含超全核心知识大图)

一文读懂分布式架构知识体系(内含超全核心知识大图) https://yq.aliyun.com/articles/721007?spm=a2c4e.11153959.0.0.2f464977X7lSdH 作者 | 晓土  阿里巴巴高级工程师 姊妹篇阅读推荐:<云原生时代,分布式系统设计必备知识图谱(内含22个知识点)> 导读:本文力求从分布式基础理论.架构设计模式.工程应用.部署运维.业界方案这几大方面,介绍基于 MSA(微服务架构)的分布式知识体系大纲,从而对 SOA 到 MSA 进化有着立

spring核心知识(学习心得)

直接进入主题,主要分为两大部分:框架学习心得和spring框架的核心知识. 学习心得 1.学习框架的时候,一定要弄清楚的几个问题: a. 这是一个什么框架 轻量级还是重量级, 侵入式还是非侵入式,是解决单个问题还是整体的解决方案. b. 框架的设计理念是什么(为了解决什么问题而出现) c. 框架的优缺点 d. 框架的架构是怎样的 e. 框架的核心是什么 f. 框架能实现哪些功能 在学习一个框架的时候如果都不知道它能够提供哪些功能,就更加不用谈功能实现和充分利用框架了 2. 在学习多个框架以后,如

网络基础知识、ASP.NET 核心知识(1)*

为什么要写网络? 我原本的计划是这样的,连续两天梳理ASP.NET开发的核心知识.说到这呢,有人问了.“不是说好了做ASP.NET笔记吗?为啥要写网络基础知识?是不是傻?” 原因是这样的.作为网站开发人员,你所开发的软件产品最终是要在网络上运行的.这就像一个生产商,要生产供给东北地区的产品,而生产商对东北的天气.地理.人文毫无了解.生产商的产品肯定是不可用的,或者低端的!产品质量不好,那是自然的.产品质量好,那算你点儿高.那么作为ASP.NET开发人员,如果一点不懂http协议.不晓得Ajax.

01:计算机硬件组层与基本配置------02计算机系统硬件核心知识

第一章:如何学习Linux 一看,二听,三记,四思考,五交流讨论,六教会别人,七实战 第二章:服务器 2.1 运维的基本职责 网站的数据不能丢 网站7*24小时运行 提升用户体验 要求服务器 稳 定 性 比普通家用机高. 运维人员的原则: 简 单 , 易 用 , 高 效 2.2 大家工作的主战场 功能:搭建网站所使用的服务器,相对于其他台式机,笔记本电脑来说, 更 加 稳 定 , 更 加 可 靠 . 简介:服务器,也称伺服器(台湾),是提供计算服务的设备.在处理能力,稳定性,可靠性,安全性,可扩

开发技术--Python核心知识A

开发|Python核心知识A A篇,主要介绍Python基础中列表,元祖,字典,集合,字符串,I/O,条件与循环,异常处理的底层知识与使用的注意事项. 希望大家对于Python会有新的收获,本篇不同于之前的浅谈Python基础知识,会更加的深入,但是在深入的同时,涉及更多内容,需要自行看源码,着重点我会标明. 前言 目前所有的文章思想格式都是:知识+情感. 知识:对于所有的知识点的描述.力求不含任何的自我感情色彩. 情感:用我自己的方式,解读知识点.力求通俗易懂,完美透析知识. 正文 由于本文不