学习C++ Primer 的个人理解(一)
《C++ Primer》这本书可以说是公认的学习C++最好的书,但我觉得不是特别适合作为教材,书中内容的顺序让人有些蛋疼。我个人认为初学此书是不能跳着看的。如果急于上手的话,我更推荐《C++程序设计》。
首先是第一章,第一章可以说是本书第一部分的一个简略的概括。对于有其他编程语言经验的读者来说,看完这章基本可以看出C++的基本语法与其他语言的差异。对于零基础的读者,可以跟着书中内容写一些小程序了。
本主要介绍了以下几点:
1.一个最简单的C++程序是什么样的。
2.初步了解输入流和输出流。
3.什么是注释
4.流程控制
5.关于类
6.关于编译
其实真的非常的概括,尤其关于编译的部分我认为可以去自己找资料了解一下。我觉得对于C++编程了解编译是很重要的事。
但也有几个重要的知识点。
1.主函数main
程序的入口,程序从主函数开始执行,主函数的名字是固定的 main。
可以按照函数的定义来解释主函数。
首先 函数名为 :main
函数体为:花括号括起来的部分
形式参数为 : 空, 没有形参(主函数是可以有形参的,在后面的章节会讲到)
返回值类型:int(c++的内置类型,在后面第二章会详细说明)
不光是主函数,普通的函数也是由这四个部分定义的。
2.输入输出流
C++的IO机制是由标准库来提供的。
为了使用标准库提供的IO机制,我们可以使用标准库定义的4个 对象 。
3.关键名词
表达式:一个或多个对象和一个运算符组成,会产生一个结果,
作用域运算符: 通过作用域运算符来告诉程序,我们想使用定义在哪个命名空间的对象。
关于其他的部分,后面的章节都有更详细的说明。
没基础的读者看这一章可能会有点懵逼,觉得自己竟然连第一章都看不懂。其实不用怕,后面会有更详细的解释。尤其是对类的说明是分了好几章来讲的。
如果零基础的读者觉得很吃力,可以把主函数那一段和注释还有输入输出看完就可以了。因为马上就会用到,是基础中的基础。其他的后面都会讲。
学习C++ Primer 的个人理解(一)的更多相关文章
- 学习C++ Primer 的个人理解(九)
这一章介绍顺序容器,在之前的第三章中,了解到的vector就属于顺序容器的一种. 一个容器就是一些特定类型对象的集合. 除了vector,还有哪些顺序容器? vector: 大小可变,随机访问的速度很 ...
- 学习C++ Primer 的个人理解(三)
第三章,主要内容是字符串和数组.感觉作者的意图是希望读者可以早一点可以写出简单的小程序,并且可以早点接触迭代器这种思想. 在我看来,这种内容的难度并不大. 对于编程来说,最重要的应该是思想,类似vec ...
- 学习C++ Primer 的个人理解(二)
本身就一定基础的读者我想变量常量这些概念应该已经不是问题了.但是本章还是有几个重点,需要特别留意一下的: 1.初始化和赋值是不同的操作 2.任何非0值都是true 3.使用新标准列表初始化,在有丢失精 ...
- 学习C++ Primer 的个人理解(零)
由于自己看书之后经常容易忘记细节,所以写在博客上让我自己的思路更加清晰一些. 我的博客仅仅只是将书中的内容概括一下,有一些不好理解的部分我会用我自己理解的方式使用大白话写出来. 仅此而已.
- 学习C++ Primer 的个人理解(十二)
动态内存与智能指针 在C++中, 动态内存用 new来分配空间并返回一个指向该对象的指针 用delete来销毁. 由于手动的对动态内存进行操作容易出现问题.所以新的标准库提供了两种智能指针. 智能指针 ...
- 学习C++ Primer 的个人理解(十一)
关联容器 就像是个字典, 其元素是 键 - 值 对. 关键字起到索引作用. 有序: map:关联数组:保存 健-值 对 set : 关键字既是值. multimap : 关键字可重复出现的map mu ...
- 学习C++ Primer 的个人理解(十)
标准库没有给每个容器都定义成员函数来实现 查找,替换等操作.而是定义了一组泛型算法,他们可以用于不同类型的元素或多种容器类型. 迭代器令算法不依赖与容器 算法永远不会执行容器的操作 算法本身不会执行容 ...
- 学习C++ Primer 的个人理解(八)
结束了第一部分,在最后的第七章,我只简单的总结了一下,因为后面还会更详细的说明有关类的内容.而且说实在的这一张的内容让我很不舒服,验证了本书实际上有许多内容是作者的学生一起拼凑而成的.第七章结构给我感 ...
- 学习C++ Primer 的个人理解(七)
类,后面还有两章是介绍有关于类的内容的.这一张依然只是个概括.但也已经将大致用法介绍完了. 重点如下: 1.成员函数的声明,必须在类的内部. 2.引用const成员函数 我们知道成员函数中有一个名为t ...
随机推荐
- android圆角View实现及不同版本这间的兼容(android3.0过后的版本)
http://blog.csdn.net/lovecluo/article/details/8710174 在做我们自己的APP的时候,为了让APP看起来更加的好看,我们就需要将我们的自己的View做 ...
- XCode帮助文档离线下载解决办法
1.菜单栏Xcode->Preferences选择Documentation,在线下载 2.离线下载(用迅雷即可下载) 在上述在线下载列表中,点击某一列,下拉框可看见 info,可得到其网络所在 ...
- Sales_item例子
Sales_item.h #ifndef SALES_ITEM_H #define SALES_ITEM_H #include<iostream> #include<string&g ...
- 嵌入式设备上的 Linux 系统开发
转载:http://www.ibm.com/developerworks/cn/linux/embed/embdev/index.html 如果您刚接触嵌入式开发,那么大量可用的引导装载程序(bo ...
- 在 CentOS 中编译安装 VIM 7.3
转载:http://blog.csdn.net/zhanglyung/article/details/6204574 默认安装的 Vim 不带有多字符支持,所以不支持中文.无论是将 CentOS 本来 ...
- Jquery解析Json字符串,并且动态生成数据表格Table
//ajax获得后台传来的json字符串 $.post("UserInfo.ashx", function (data) { //假设data="{T1:[{User_I ...
- Android(java)学习笔记82:我们到底该如何处理异常?
我们到底该如何处理异常? 原则: 如果该功能内部可以将问题处理,用try,自己能解决就自己解决问题. 如果处理不了,交由调用者处理,这是用throws,自己不能解决的问题,我们就抛出去交个调用者解决这 ...
- CASS转ARCGIS
本文转载千浪兄弟博客 1.先看看这张图:CASS的扩展属性 ("south" (1000 . "310000")) 对应图斑属性编码“310000”,(&quo ...
- Simple Membership 学习笔记
第一步:新建项目后添加对WebMartix.Data 和 WebMatrix.WebData的引用第二步:在web.config中添加membership配置节第三步:修改Global.asax文件 ...
- android scrollview主要的问题
项目做多了之后,会发现其实 ScrollView嵌套ListVew或者GridView等很常用,但是你也会发现各种奇怪问题产生.根据个人经验现在列出常见问题以及代码最少最简单的解决方法. 问题一 : ...