C++入门学习
使用cout和cin,需要包括C++提供的输入输出库。#include <iostream> 标准输入输出头文件
<string>
using namespace std; //定义在程序中使用的命名空间,如果不加这条指令的话,下面使用到的cout就要变成std::cout(在作用域std中的cout操作)
C++中的变量,可以随时定义,随时使用。
用到输入输出库时,输出会保持在缓冲区(优化输出操作)中的
刷新缓冲区的操作:
1.缓冲区已满
2.请求库从标准输入中读取数据
3.主动要求刷新缓冲区
字符串初始化方式:
const string hao=”hello”+”!!” //定义一个字符串,并且初始化为hello!!
const string hu = “hu”+hao. //使用+运算符连接两个字符串,再次定义一个字符串为huhello!!不能连接两个字符串常量,这个+因为左右两边的操作数不同,而产生了不同的效果。同一个运算符,不同对象产生不同的效果,视为运算符重载。
函数的重载,让几个函数具有相同的函数名,但是因为传入的参数不同,而实现的功能就不一样。
const string spaces(hu.size(),' ');//指定一个字符串,并且填充指定长度的内容。
字符常量和字符串常量:
字符常量是由单引号括起的,而字符串常量是由双引号括起的。
const关键字:
定义一个变量时,保证了在该变量的生存期内,此变量只能被读取,而不能被改变,必须在定义就要有一个初始化的值。
string类对象
一些流控制器,比如endl,输出这个代表一个换行
cout << setprecision(3),为流的后继输出设定一个特定的有效位数
for(i=2;i<5;i++){
//构成一个左边封闭,右边开放的区间[2,5),取值范围为2,3,4
}
如果变量时在for的初始化阶段定义的,则在其之后,就不能访问这个变量了。
vector类型是一个存储数据集合的容器。
vector<double>homework; //定义一个向量型的存储容器(名为homework),每个数据类型为double
参数类型为double的向量,名称为homework
访问向量元素的方法homework[mid]
采用库中的sort算法,sort(homework.being(),homework.end());将容器中的数据以非递减来排序(插入排序,O(Nlog(N))。
if(size == 0)
throw domain_error(“media of an empty vector”)
如果程序抛出一个异常,它会在抛出异常的地方终止执行并且转移到程序的另一部分,并向这部分提供了一个异常对象。异常对象中含有调用程序可以用来处理异常的信息。
当要求一个函数返回多个值时,通常的做法是用函数的return来执行操作的成功或者失败,用函数的引用参数或者指针参数来传递操作的结果信息。