C++学习笔记

来源:互联网 发布:teamviewer mac版下载 编辑:程序博客网 时间:2024/04/29 18:36

1、cin 遇到空格、TAB、换行符时自动结束;

 

2、cin.get( n ) / n=cin.get()接收一个输入字符n(包括空白符),并返回该字符值,特别的当它遇到文件结束符时,返回EOF,所以当程序接收一个输入字符‘0’时,即将其输出;

 

3、cin.ignore( n ) 忽略输入的前n个字符;

 

4、cin.getline() 接受输入的一行字符;

 

5、cin.peek() 接受一个字符,并把多余的除换行符以外的输入都显示出来;

例:while(cin.peek() != '\n')

cout << (p=cin.get());

 

6、cin.read(buf, n) 接受指定数目的字符到数组中(可读入空白符),提前结束的话输入文件结束符(Ctrl+Z);

 

7、cin.write(buf,n) 从数组中输出指定数目的字符,若这个数目大于数组长度,则输出整个数组;

 

8、cin.gcount() 统计cin.read() 输入的字符数目;

 

9、cin.width(n) /cout.width(n) 设置域宽,cin.width() 比输入的域宽小1,因为输入的字符串后必须加上一个空字符;

 

10、#ifdef...#else...#endif 标识符已被#define 命令定义过,则对程序片段1进行编译,否则对程序片段2进行编译;该形式还用于防止重复包含头文件;

例:#ifndef _POINT_H_

#define _POINT_H_

......

#endif

 

11、创建累对象后记得初始化;

例:Animal :: Animal : age(1) , minEnergyLevel(5) {positioin[0] = 0; position[1] = 0};

Animal  Animal11(“dog”);

 

12、可使用new来动态创建对象,清除由new开辟的对象使用delete;

例:Animal * a = new Animal(“dog”);

Animal * b = new Animal();

delete[] c;

 

13、友元函数可访问类的私有成员,是非成员函数,要写在类中;

例:friend void fun(Animal &a);

 

14、拷贝构造函数;

例:Time :: Time(Time &t)

{

Hour = t.hour;

Minute = t.minute;

Second = t.second;

}

 

15、常量限定;

例:const float PI=3.1415926;

Void fun() const;


16、重载函数(函数名相同,参数个数和类型不同,函数返回类型可不同);

 

17、继承。在派生过程中构造函数和析构函数都不能被继承,除此以外是所有成员都能被继承;

例:(派生类构造函数说明)派生类名::派生类名:基类名1,基类名2......{...}

 

18、虚函数。虚函数必须是成员函数;

例:virtual fun(int n); 

 

19、模版函数;

例:template <class T>

T& max(T& x, T& y){

return x < y ? y : x

};

 

template <class X, class Y>

void output(X x, Y y){

cout << x << “ ” << y << endl;

};

 

20、指针;

例:int i=0;

int y=0;

int *p = i;

p = &j;

例:int a[3] = {0,1,2};

int *p = a; / int *p; p=&a[0];

 

21、函数传递有三种方式:按值传递、指针传递、引用传递;

 

22、字符串操作(P138)

0 0