C++Primer学习笔记
文章平均质量分 53
zero_lulu
这个作者很懒,什么都没留下…
展开
-
C++Primer 数组部分
数组是一种复合类型,与vector类似数组也是存放类型相同的对象的容器(所以不能存放引用),这些对象没有名字,需要通过其位置访问。数组本身是一个对象。与vector不同的是数组的大小是固定的,不能随意的向数组中增加元素。首先是数组的声明,数组的声明形如 a[d] ,其中a是数组的名字,d是数组的维度,维度必须是一个常量表达式,且必须大于0;默认情况下,数组中的元素会被默认初始化,和内置类型的变量一...原创 2018-03-23 10:04:24 · 404 阅读 · 0 评论 -
C++ 表达式基础知识(左值、右值未掌握)
表达式由一个或多个运算对象组成,对表达式求值将会得到一个结果。字面值和变量是最简单的表达式。重载运算符:当运算符作用于类类型的运算对象的时候,用户可以自行定义其含义。重载运算符时,包括运算对象的类型和返回值的类型,都是由该运算符定义的,但是运算对象的个数、运算符的优先级和结合律都是无法改变的对于那些没有指定运算顺序的运算符来说,如果表达式指向并修改了同一个对象,将会引发错误并产生未定义的行为。所以...原创 2018-03-23 21:35:09 · 806 阅读 · 0 评论 -
C++中的运算符
今天读了C++Primer中的表达式一章,特来整理有关运算符的知识要点。首先是算术运算符:所有的表达式的运算顺序与三点有关:求值顺序、优先级、结合律。其中优先级和结合律在书中147页可以查到,至于求值顺序目前书中还没有细讲,暂且不做描述。溢出:造成溢出有两个原因:其一是因为数学性质本身(例如除数是0)其二是当计算结果超出该类型所能表示的范围是就会产生溢出运算符%:取模/取余运算符m%n = m -...原创 2018-03-23 23:11:50 · 351 阅读 · 0 评论 -
条件语句
首先是if - else 语句,这个对我来说并不陌生。个人觉得其中需要注意的是:在if和else后的语句块要使用花括号包起来;因为在C++ 中规定else与离自己最近的未匹配的if匹配,如果不用花括号括起来的话,如果在if中嵌套了另一个if,else就会进行错误的匹配。再一点,我们要理解语句块的使用时机:当语法上需要一个语句,而逻辑上却需要多条语句来实现时,我们使用花括号来吧这些语句包起来,形成一...原创 2018-03-24 21:32:54 · 178 阅读 · 0 评论 -
迭代语句以及跳转语句
while语句:while的条件部分可以是一个表达式或者一个带初始化的变量声明书中原话:定义在while条件部分或者while循环体内的变量每次迭代都经历从创建到销毁的过程如下面的代码,程序会输出10个2int cc = 1; while (int i = 1) { cc++; i++; std::cout << i << std::endl; if...原创 2018-03-25 15:12:20 · 393 阅读 · 0 评论 -
顶层const和底层const
今天读到函数这章,发现又说到了顶层(高层)const和底层(低层)const,然而自己对他们还是一知半解,就重读了有关这一部分的知识。感觉自己已经理解了,总结一下。首先这里是书中的原话:用名词顶层const表示指针本身是一个常量;用名词底层const表示指针所指的对象是一个常量。我们知道const是一个限定符,根据书中的话我认为可以这么理解:如果const修饰的是一个指针,那么这个指针就是一个顶层...原创 2018-03-25 19:33:14 · 203 阅读 · 0 评论