好久没写代码了,很多东西都忘记了。复盘一下
头文件 与 输入 输出
#include
using namespace std;
cout<<"Hello world!";
cin>>use_name;
逻辑运算符 NOT
算术运算符 * / %
算术运算符 + -
关系运算符 > < <= >=
关系运算符 == !=
逻辑运算符 AND
逻辑运算符 OR
赋值运算符
vector,可储存18个元素,每个元素的初始值为0;
#include
const int seq_siz = 18;
vector pell_seq(seq_size);
#include
//供输出的文件
ofstream outfile("seq_data.txt");//如果该文件不存在就新建一个文件以供使用
ofstream outfile("seq_data.txt",ios_base::app);
//如果文件已经存在且我们不希望丢弃原来的内容,而是希望将新数据增加到该文件中
//以追加模式打开该文件
if(!outfile) //检查文件是否成功打开
//共读取的文件
ifstream infile("seq_data.txt");
int ival = 1024;
int &rval = ival;//reference(引用),代表一个int对象
int jval = 4096;
rval = jval;//就是将rval也就是ival设置为了4096;//无法令rval转而代表jval,必须从一而终
//当我们以by reference方式将对象作为函数参数传入时,对象本身并不会复制出另一份--复制的是
//对象的地址
//pointer可能并没有指向某个实际对象,所以使用前需要检查
//而引用则必定会代表某个对象
除了static这个例外以外,函数内定义的对象只存在于函数执行期间。
如果要返回所谓局部对象的地址返回,会导致运行时错误
new Type;
int *pi;
pi = new int(1024);
delete pi;
delete [] pi;//删除数组中的所有对象
void bubble_sort(vector &vec,ofstream *ofil = 0);
//给*0fil提供了一个默认参数0
//默认值的解析操作由最右边开始执行,意思就是,一个带有默认参数的参数,它右边的所有参数必须也由默认参数
//默认值只能指定一次
//为了高可见性,有时会将默认值放在函数声明中,包含在头文件里
void display(const vector&,ostream&=cout);
//而在函数定义处,并没有指定参数的默认值
const vector* fibon_seq(int size)
{ static vector elems;//函数的工作逻辑放在此处return &elems;
}
elems被定义为fibon_seq()函数中的局部静态对象,该对象的存在不会因为函数的调用和结束而重新建立和破坏
void display_message(char ch);
void display_message(const string&, int);
//编译器无法根据函数返回类型来区分两个具体相同名称的函数
function template(函数模板)
将参数列表中指定的全部(或部分)参数的类型信息抽离出来
template
void display_message(const string &msg,const vector &vec)
{cout<
标识符起到占位符的作用,用来放置函数参数列表及函数体中的某些实际数据类型
如何使用函数模板:
vector ivec;
string mag;
//...
display_message(msg,ivec);