好吧,第一次写东西...如何下手呢...(请无视)

--------------------------------------------------------------

Chapter 1. Getting Started

1.1  Write a Simple C++ Program

函数组成:返回类型(type)、函数名、参数列表、函数体

  *函数体中的return返回类型要与函数的返回类型相匹配。

  *类型Type:包含了数据元素的内容和对其可能的操作。

源文件(Source files):一般指程序文件,常见扩展名:.cc, .cxx, .cpp, .cp, .C

1.2 A First Look at Input/Output

IO函数由标准库(standard library)提供,使用前开头加上相关头文件,如<iostream.h>

标准输入:cin

标准输出:cout

  *cerr用以输出警告和错误消息;clog用以输出程序执行的信息。

**表达式:会得到一个结果并与多个操作域和一个操作符相联系(an expression yields a result and is composed of one or more operands and (usually) an operator.)

  *endl(a manipulator)用以结束当前行并对缓存器进行刷新。

std::cin   std::cout   前缀std称为命名空间(namespace),可以保证不必要的名字冲突。

            ::操作符,表明cin函数和cout函数是用std命名空间里的。

Exercise Section 1.2

 void Exericse_1_3()
{
std::cout << "Hello, World" << std::endl;
}

Exericse 1.3

void Exericse_1_4()
{
int num1 = , num2 = ;
std::cout << "Input two numbers: ";
std::cin >> num1 >> num2;
std::cout << "The multiplication of these two numbers is " << num1 * num2 << std::endl;
}

Exericse 1.4

1.3 A Word about Comments

注释(comment):注意随时更新!

  方式://  和   /*...*/

1.4 Flow of Control

1.4.1 The “while” Statement

  while循环:先判断条件,为真执行循环体。

*混合操作符 +=:  sum += val;   //等价于  sum = sum + val;

递增操作 ++:   ++val;  //等价于  val = val + 1;

Exercise Section 1.4.1

 void Exercise_1_9()
{
//Write a program that uses a while to sum the numbers from 50 to 100
int sum = , num = ;
while (num <= )
{
sum += num;
num ++;
}
std::cout << "The sum from 50 to 100 is " << sum << std::endl;
}

Exericse1.9

 void Exercise_1_10()
{
int sum = , num = ;
while(num >= )
{
sum += num;
num--;
}
std::cout << "The sum from 10 to 1 is " << sum << std::endl;
}

Exericse1.10

1.4.2 The "for" Statement

for 循环包括两部分:a header and a body

  header:初始化 ;条件;表达式

Exericse Section 1.4.2

 void Exercise_1_13()
{
int sum = , num = ;
for (; num <= ; num++)
{
sum += num;
}
std::cout << "The sum from 1 to 10 is " << sum << std::endl;
}

Exericse 1.13

1.4.3 Reading an Unknown Number of Input

while( std::cin >> val )

{...}

当输入一个无效的命令时,cin返回一个错误值,while跳出循环,如ctrl + z(windows),ctrl + d(Unix or Mac OS X)

*错误类型:

  1.语法错误(syntax error):如末尾未加分号,字符串未用双引号括起等

  2.类型错误(type error):如将整数复制给了string类型的变量

  3.声明错误(declaration error):变量必须先声明后使用。常犯的两种错误是缺少std命名空间和变量拼写错误。、

Exericse Section 1.4.3

 void Exercise_1_16()
{
int sum = , num = ;
while (std::cin >> num)
{
sum += num;
}
std::cout << "The sum of numbers you input is " << sum << std::endl;
}

Exercise1.16

1.4.4 The if Statement

if (std::cin >> currVal) {...} 用以确保输入不为空

if()  {...}  如果括号中的返回值为Ture,运行此块中的命令

else {...} 否则运行此块中的命令

  *=操作符表示赋值,==操作符表示判断是否相等

*缩进和格式:关键是考虑它的可读性和可理解性,一旦选择一种风格,便坚持使用。

1.5 类 Introducing Classes

一种数据类型,对象的抽象

书店实例:Class Sales_item

实例化:Sales_item item;

成员: ISBN, SUM, revenue

行为: 函数isbn:取出一个实例

    操作符>>,<<:读写实例

    操作符=:将一个实例赋值给另一个

    操作符+:将两个相同ISBN的实例相加,求出相应的SUM和revenue

    操作符+=:给一个实例增加另一个

  *头文件<>表示从系统中先搜索,""表示从项目中先搜索

Exercise Section 1.5.1

  之后写好类Sales_item再作答

1.5.2 初探成员函数

成员函数被定义为类的一部分,有时也被成为类的方法(methods)

使用成员函数的方法是利用“.”操作符和"()"操作符  如 item1.isbn()

1.6 The Bookstore Program

关键在于对成员函数 成员变量的理解

C++ Primer 5th Edition自学笔记(1)的更多相关文章

  1. C++Primer 4th edition读书笔记-第二章

    1 变量的定义用于为变量分配存储空间,还可以为变量指定初始值.在一个程序中,变量有且只有一个定义.声明用于向程序表明变量的名字和类型.定义也是声明:当定义变量时,我们声明了它的类型和名字.可以通过使用 ...

  2. 【读书笔记】C++ primer 5th 从入门到自闭(一)

    这几天看了C++ primer 5th的一二章,有很多收获,但是有的地方因为翻译的问题也搞得理解起来颇为难受啊啊啊啊.尤其是const限定符,在C语言并没有这么多复杂的语法,在C++里面语法细节就多的 ...

  3. 【语音识别】Microsoft Speech Platform 自学笔记2 环境要求与安装过程

    笔记人:又吹风 时 间:2012/12/16 主要内容:Microsoft Speech Platform的环境要求与安装过程. 上次也说过了,当前Microsoft Speech Platform最 ...

  4. C++Primer 5th 练习 12.19

    这阵子真是太忙了, 连续做了四个课设. 当然这并不能作为好久没写博客的借口, 没写博客的主要原因只有一个: 懒. 最近又开始回顾C++的语法与特性(据说C++就是一门需要反复回顾的语言),以及学习C+ ...

  5. 《Linux内核设计与实现》课本第四章自学笔记——20135203齐岳

    <Linux内核设计与实现>课本第四章自学笔记 进程调度 By20135203齐岳 4.1 多任务 多任务操作系统就是能同时并发的交互执行多个进程的操作系统.多任务操作系统使多个进程处于堵 ...

  6. 《Linux内核设计与实现》课本第三章自学笔记——20135203齐岳

    <Linux内核设计与实现>课本第三章自学笔记 进程管理 By20135203齐岳 进程 进程:处于执行期的程序.包括代码段和打开的文件.挂起的信号.内核内部数据.处理器状态一个或多个具有 ...

  7. 《Linux内核设计与实现》课本第十八章自学笔记——20135203齐岳

    <Linux内核设计与实现>课本第十八章自学笔记 By20135203齐岳 通过打印来调试 printk()是内核提供的格式化打印函数,除了和C库提供的printf()函数功能相同外还有一 ...

  8. python自学笔记

    python自学笔记 python自学笔记 1.输出 2.输入 3.零碎 4.数据结构 4.1 list 类比于java中的数组 4.2 tuple 元祖 5.条件判断和循环 5.1 条件判断 5.2 ...

  9. 《C++ Primer Plus》学习笔记1

    C++ Primer Plus>学习笔记1 第二章.開始学习C++ 1.控制符endl 假设显示字符串时,在字符串中包括换行符,而不是在末尾加上endl,这样能够大大降低输入量:假设是要生成一个 ...

随机推荐

  1. TortoiseSVN中分支和合并实践【转】

    使用svn几年了,一直对分支和合并敬而远之,一来是因为分支的管理不该我操心,二来即使涉及到分支的管理,也不敢贸然使用合并功能,生怕合并出了问题对团队造成不良影响,最主要的原因是,自己对分支的目的和合并 ...

  2. php检测文件只读、可写、可执行权限

    例子:检测文件是否可读.可写.可执行. 复制代码代码示例: <?php  $myfile = "./test.txt"; if (is_readable ($myfile)) ...

  3. C++说明符和限定符

    有些被称为存储说明符(storage class specifier)或cv-限定符(cv-qualifier)的C++关键字提供了一些有关存储的信息.下面是存储所说明符:* auto (在C++11 ...

  4. Computer Science Theory for the Information Age-5: 学习理论——VC维的定义以及一些例子

    学习理论——VC维的定义以及一些例子 本文主要介绍一些学习理论上的东西.首先,我们得明确,从训练集上学习出来的分类器的最终目标是用于预测未知的样本,那么我们在训练的时候该用多少的样本才能使产生的分类器 ...

  5. android基础---->NDK的使用

    NDK的发布,使“Java+C”的开发方式终于转正,成为官方支持的开发方式.NDK将是Android平台支持C开发的开端,今天我们开始ndk的学习. NDK的简要说明 ndk是什么: The Nati ...

  6. MQTT的学习研究(五) MQTT moquette 的 Blocking API 发布消息服务端使用

    参看官方文档: http://publib.boulder.ibm.com/infocenter/wmqv7/v7r0/index.jsp?topic=/com.ibm.mq.amqtat.doc/t ...

  7. 小程序 - API 踩坑记录(更新中...)

    API 小程序API结构导览图: 声明: 请尊重博客园原创精神,转载或使用图片请注明: 博主:xing.org1^ 出处:http://www.cnblogs.com/padding1015/

  8. javascript:;禁用a标签默认功能的缺点。

    在使用a标签做切换tab或者其他功能时,经常使用javascript:;来作为a标签的href来使用. 缺点: 1.在js尚未加载的情况下,点击该a标签会弹出新窗口. 2.会使gif动画失效(没经历过 ...

  9. sencha touch 入门系列 (七)sencha touch 类系统讲解(上)

    在mvc结构的基础上,sencha touch又使用了sencha公司为extjs4开发出来的类系统,在面向对象的编程语言中,类是对对象的定义,它描述了对象所包含的大量属性和方法. 跟面向对象语言类似 ...

  10. Jenkins持续集成【简介】

    1.1 目前主流网站部署的流程    目前主流网站部署方法,通过Hudson/Jenkins工具平台实现全自动部署+测试,是一个可扩展的持续集成引擎,是一个开源软件项目,旨在提供一个开放易用的软件平台 ...