从今天开始学习essential c++,记录下其中的关键知识点,以便以后查阅。
class的定义一般分为两部分,“头文件”声明该类所具有的的各种操作,“实现文件”类各种操作的实现内容。
字符常量由一组单引号括住,分两类可打印字符和不可打印字符。
using namespace std;包含命名空间,std是标准程序库命名空间的名称,命名空间是一种将程序库名称封装起来的方法,可以避免和应用程序发生命名冲突。
为每个对象初始化是个好习惯,即使只用来表示该对象尚未具有真正意义的值。
以“=”初始化和构造函数初始化。
前置表达式,先递增或递减再使用;后置先赋值给表达式再使用。
让数列的出现顺序随机化
#include <cstdlib>
srand(seq_cnt);
seq_index = rand() % seq_cnt;
current_vec = seq_addrs[seq_index];
rand()和srand()伪随机数产生器,srand()是伪随机数产生器种子。
文件读写
欲对文件进行读写操作,首先需包含 fstream 头文件。
打开可供输出的文件:
ofstream outfile("seq_data.txt");
以追加模式打开文件
ofstream outstream("seq_data.txt",ios_base::app);
对文件进行操作前首先判断文件是否打开成功。
以读取模式打开文件 ifstream infile("seq_data");
读写同一文件,以追加模式写,需传入第二个参数值ios_base::in|ios_base::app
fstream iofile("seq_data.txt",
ios_base::in|ios_base::app);
if (! iofile)
// open failed for some reason ... darn!
else
{
// reposition to front of file to begin reading
iofile.seekg(0);
// ok: everything else is the same ...
}
iofile.seekg(0)定位到文件起始位。