《C++Primer 5e》学习笔记
文章平均质量分 72
AC_Gibson
这个作者很懒,什么都没留下…
展开
-
《C++Primer 5e》学习笔记(1):变量和基本类型
1.类型转换:(1)当我们赋给无符号类型一个超出它表示范围的值时,结果是初始值对无符号类型表示数值总数取模后的余数。例如,8比特大小的unsigned char 可以表示0到255区间内的值,如果我们赋了270,结果就是270%256=14.(2)当我们赋给带符号类型一个超出它表示范围的值时,结果是未定义的(undefined)。2.初始化不是复制,初始化的含义是创建变量时赋予一个初始原创 2015-12-23 15:35:25 · 850 阅读 · 0 评论 -
《C++Primer 5e》学习笔记(3):表达式
1.函数调用也是是一种特殊的运算符,他对运算对象的数量没用限制。2.C语言中便于记忆有“左值可以位于赋值语句的左侧,右值不能”的说法。在C++语言中,一个左值表达式的求值结果是一个对象或者一个函数,然而以常量对象为代表的某些左值实际上不能作为赋值语句的左侧运算对象。此外,虽然某些表达式的求值结果是对象,但他们是右值而不是左值。可以做一个简单的归纳:当一个对象被用作右值的时候,用的都是对象的值(原创 2015-12-29 14:40:07 · 831 阅读 · 0 评论 -
《C++Primer 5e》学习笔记(4):语句
1.表达式语句的作用是执行表达式并丢弃掉求值结果。2.复合语句(也被称作块)是指用花括号括起来的语句和声明的序列,一个块就是一个作用域。3.case关键字和它对应的值一起被称为case标签。case标签必须是整型常量表达式。任何两个case标签都不能相同,否则会引发错误。4.switch执行时如果跳过了某个特定的case,则switch结构中该case标签之前的部分会被忽略掉。5.原创 2015-12-29 18:49:16 · 864 阅读 · 0 评论 -
《C++Primer 5e》学习笔记(5):函数
1.函数的调用完成两项工作:一是用实参初始化函数对应的形参,二是将控制权转移给被调用的函数。此时,主调函数的执行被暂时中断,被调函数开始执行。2.函数定义规定了实参与形参存在的对应关系,但是并没有规定实参的求值顺序。编译器能以任意可行的顺序对形参进行求值。3.函数的返回值不能是数组类型或函数类型,但可以是指向数组或函数的指针。4.局部静态对象在程序执行路径第一次经过对象定义语句时初始化原创 2016-01-06 15:58:15 · 851 阅读 · 0 评论 -
《C++Primer 5e》学习笔记(2):字符串、向量和数组
1.作用域操作符(::)的含义:编译器应从操作符左侧名字所示的作用域中寻找右侧那个名字。当左侧名字为空时即为全局变量。2.对于using声明:每个名字都需要有独立的using声明,且头文件中不应包含using声明。3.标准库类型string(string是一个类)需要有头文件#include 和命名空间using std::string;4.getline(is,s)函数的原创 2015-12-25 14:28:18 · 803 阅读 · 0 评论 -
《C++Primer 5e》学习笔记(6):类
1.定义在类内部的函数是隐式的inline函数。2.成员函数通过this隐式参数来访问调用它的那个对象。当我们调用一个成员函数时,用请求该函数的对象的地址去初始化this。3.this的目的是总指向“这个”对象,所以默认情况下this的类型是指向类类型非常量版本的常量指针,我们不允许改变this中保存的地址。这也意味着this不能绑定到一个常量对象上,从而导致我们不能在一个常量对象上调用普通的成员函数。C++允许我们把const关键字放在成员函数的参数列表后,以紧跟在参数列表之后的const来表示thi原创 2016-01-07 20:24:58 · 1154 阅读 · 0 评论