C++ Primer 第一章 快速入门笔记
C++ Primer 第一章 快速入门
看到很多人学习这本书都会写下学习过程笔记!因为觉得这是不错的做法,也可以巩固自己学习的知识,还能在以后的学习这本时发现问题,到时也可以到回来修改和补充。
自己在图书馆看完了第一章,小钱问我感觉会不会闷,我说我觉得很爽!我不打算很快地把它看完,我要把每个知识点都掌握,所以刚开始会看得很慢,我也不急,就像小钱说的稳扎稳打,一步一个脚印一样。因为有C++基础,所以看这本书并不困难,看过之后,发现这本书确实不适合新手去读,最好要有点基础才行,好了废话不多说,开始写这一章的笔记了。
本章呢,介绍C++大部分基本要素:内置类型、库类型、类类型、变量、表达式、语句和函数。这一章主要是做一个缓冲,后面的章节才慢慢阐明本章的主题。
1.1节-编写简单的C++程序
一个C++程序都包含一个或多个函数,其中必须有一个命名为main。
函数由执行函数功能的语句序列组成。
main函数的返回值必须是int型,该类型表示整数。int类型是内置类型,即该类型是由C++语言定义的。
C++中多数语句以分号作为结束标记。(容易被忽略)
return语句带上一个值时,这个值就是函数的返回值。
返回值类型必须和函数的返回类型相同。
——编译与执行程序
这本书程序好像是调用GUN编译器,我一直用的是Visual C++ 6.0,算是一个比较老的编译器,最近开始用Visual Studio系列的编译器,还不怎么会用,有点悲催!
——程序源文件命名规范
源文件的名字由文件名和文件后缀两部分组成。
visual Studio 编译器后缀形式是(.cpp)
1.2节——初窺输入/输出
这种功能是由标准库提供的(iostream库)
istream和ostream,分别表示输入流和输出流
标准输入与输出对象分别是cin和cout,标准库还定义了另外两个ostream对象分别命名为cerr和clog;
课本代码如下:
#include<iostream>
int main()
{
std::cout<<"Enter two number:"<<std::endl;
int v1,v2;
std::cin>>v1>>v2;
std::cout<<"The sum of"<<v1<<"and"<<v2<<"is"<<v1+v2<<std::endl;
return 0;
}
程序的第一行是一个预处理指示,尖括号里的名字是一个头文件
1.写入到流
形式:(std::cout);<<是输出操作符
endl是一个特殊值,称为操作符,具有换行的效果,并刷新与设备相关联的缓冲区。
2.使用标准库中的名字
命名空间(namespace)std,这本书的输出形式跟谭伯伯那本《C++程序设计》输出有点区别,谭伯伯那本在程序开头是写
(using namespace std;),然后输出就直接有cout,而这本书是把命名空间std作为前缀,写法使用了作用域操作符::.
3.读入流
形式:(std::cin);>>是输入操作符
4.完成程序
就是输出结果;
注解:在写C++程序时,大部分出现空格的地方可用换行符代替。但是有两个例外:
1.字符串面值中的空格不能用换行符代替(" ")。
2.预处理指示中不允许出现空格符(#include" ")。
1.3——关于注释
单行注释以双斜线(//)开头,另一种定界符,注释对(/**/),这种注释以"/*"开头,以"*/"结尾。
注释对一般用于多行解释,而双斜线注释则常用于半行或单行的标记。(注释对不可嵌套)
1.4——控制结构
while语句
代码:
//当val>10时跳出循环
while(val<=10){
sum+=val;
++val;
}
由以上代码可知while通过测试条件(condition)和执行相关的表达式语句(while_body_statement)来重复执行,直到条件为假。
条件是一个可求值的表达式,可以测试其结果,如果结果值为非0,那么条件为真,值为0,那么条件为假。
for语句
代码:
for(int val=1;val<=10;++val)
sum+=val;
上述代码包含for语句头和for语句体两部分
for语句头由三部分组成:一个初始化语句,一个条件,一个表达式。for(循环变量赋初值;循环条件;循环变量增值)语句
执行顺序:
1.初始化语句
2.循环条件
3.语句
4.循环变量增值
If语句
一般形式:
if(表达式)语句1
else 语句2
1.5类的简介
使用类时需要清楚三个问题
1.类的名字是什么?
2.它在哪里定义?
3.它支持什么操作?
Sales_item类
1.Sales_item对象上的操作
每个类定义一种类型,类型名与类名相同。
定义类类型的变量,当写下Sales_item item;
就表示item是类型Sales_itemd的一个对象。
Sales_item是一种自定义类型。当使用自定义头文件,我们采用双引号,(" ")把头文件名括起来。
初窺成员函数
什么是成员函数?它属于一个类的成员,出现在类体中,这是区别一般函数的,成员函数可以访问本类任何成员,可以引用在本作用域中的有效数据。当调用成员函数,要指定函数要操作的对象,语法是使用点操作符(.): item1.same_isbn;
1.6——C++程序
之前所介绍的知识只是在做一些知识储备,学完这章已经可以解决最初的书店问题了
<span style="font-family:KaiTi_GB2312;"></span><pre class="cpp" name="code">//C++程序
#include<iostream>
#include “Sales_item.h”
int main()
{
Sales_item total,trans;//定义两个Sale_item类对象
//读入交易
if(std::cin>>total){
while(std::cin>>trans)
//ISBN相同
if(total.same_isbn(trans))
//更新total
total=total+trans;
//ISBN不同
else{
std::cout<<total<<std::endl;
//使用刚读入的交易重置total
total=trans;
}
std::cout<<total<<std::endl;
}else{
std::cout<< “No data?!”<<std::endl;
return -1;
}
return 0;
}
本章介绍了足够多的知识点,我也很清楚地把这些知识点简要的罗列了一遍,虽然写这篇笔记花了我不是太多时间,但我还是觉得很浪费时间,进度很慢,基本计划就是看完一章后马上写笔记,以后尽量只把重点难点给记录下来,还有一些易错知识点,还有一些经常犯的错误。第一篇笔记,有了一个很好的开头,接下来的会更加努力去写
摘自 wwj的梦想之路
补充:软件开发 , C++ ,