没有合适的资源?快使用搜索试试~ 我知道了~
C++学习笔记(快速入门C++)
4星 · 超过85%的资源 需积分: 0 7 下载量 189 浏览量
2010-10-20
09:16:19
上传
评论
收藏 295KB PDF 举报
温馨提示
试读
21页
这个是有关C++的学习笔记,便于快速入门
资源推荐
资源详情
资源评论
C++学习笔记
2010 年寒假版
(章节划分不是很严格,莫怪)
作者:Phil
联系
hph2008@mail.ustc.edu.cn
目录
C++学习笔记 .................................................................................................................................... 1
1 开始 ................................................................................................................................... 3
2 标准输入输出 ................................................................................................................... 3
2.1 概览 ....................................................................................................................... 3
2.2 I/O操纵符 ............................................................................................................. 3
2.3 I/O标志 ................................................................................................................. 4
2.4 其他I/O函数 ......................................................................................................... 4
3 C到C++非面向对象特性概览 ........................................................................................... 5
3.1 数据类型转换 ....................................................................................................... 5
3.2 常数类型限定符const .......................................................................................... 5
3.3 类型声明 ............................................................................................................... 6
3.4 命名空间和范围解析运算符:: ............................................................................. 6
3.5 引用 ....................................................................................................................... 6
3.6 内联函数 ............................................................................................................... 7
3.7 默认参数值 ........................................................................................................... 7
3.8 动态内存管理 ....................................................................................................... 7
4 面向对象初步 ................................................................................................................... 8
4.1 类与对象概述与入门 ........................................................................................... 8
4.2 类定义 ................................................................................................................... 8
4.3 类的实例——对象
............................................................................................... 8
4.4 静态数据成员 ....................................................................................................... 9
4.5 类与结构体 ........................................................................................................... 9
5 成员函数细节 ................................................................................................................... 9
5.1 构造函数 ............................................................................................................... 9
5.2 析构函数 ............................................................................................................. 10
5.3 复制构造函数 ..................................................................................................... 10
5.4 静态成员函数 ..................................................................................................... 10
5.5 常量成员函数 ..................................................................................................... 10
6 友元函数 ......................................................................................................................... 11
6.1 友元函数 ............................................................................................................. 11
6.2 友元类 ................................................................................................................. 11
7 重载 ................................................................................................................................. 11
7.1 重载函数 ............................................................................................................. 11
7.2 重载运算符 ......................................................................................................... 11
7.3 重载特殊运算符 ................................................................................................. 13
8 继承 ................................................................................................................................. 14
8.1 基类与派生类 ..................................................................................................... 14
8.2 访问指定符 ......................................................................................................... 15
8.3 类访问指定符 ..................................................................................................... 15
8.1 多态继承 ............................................................................................................. 15
8.2 多态 ..................................................................................................................... 15
9 虚函数 ............................................................................................................................. 16
9.1 虚函数 ................................................................................................................. 16
9.2 虚析构函数 ......................................................................................................... 16
9.3 纯虚函数 ............................................................................................................. 16
10 模板 ............................................................................................................................. 16
10.1 函数模板 ......................................................................................................... 16
10.2 类模板 ............................................................................................................. 17
11 异常处理 ..................................................................................................................... 17
11.1 异常处理 ......................................................................................................... 17
11.2 内存越界处理器 ............................................................................................. 19
12
文件输入输出 ............................................................................................................. 19
12.1 I/O类层次 ........................................................................................................... 19
12.2 文件输出操作 ................................................................................................. 19
12.3 文件输入操作 ................................................................................................. 20
12.4 文件方式指定符 ............................................................................................. 20
12.5 文件I/O成功 .................................................................................................... 20
12.6 二进制I/O ....................................................................................................... 21
12.7 随机访问 ......................................................................................................... 21
1 开始
教材《纯粹 C++编程》(Pure C++ Programming)
学习基础:已学 C 语言,以及掌握了 JAVA 语言基础
目标:系统学习 C++,将书读薄,形成文档便于查阅
方法:通过比较 C 与 C++,比较 C++与 JAVA 的不同来学习
2 标准输入输出
2.1 概览
标准输入输出对象为 cin 和 cout,另外还有标准错误设备 cerr、标准日志设备 clog,
一般在命名空间 std 下,以上只有错误设备 io 类型非缓存,需要头文件 iostream.h
输出运算符<<将右端对象置于输出流中,输入运算符>>从输入流中读入数据到右
端对象
示例:
cout << “~” << endl << 12 ;
int a;
cin >> a;注意>>在读字符时也会忽略空格
2.2 I/O 操纵符
2.2.1 非参数化操纵符
操纵符 说明 例子
dec
用十进制值写入输出 cout<<dec<<100;//输出 100(效果永久)
hex
用十六进制写入输出 cout<<dec<<100;//输出 64(效果永久)
oct
用八进制写入输出 cout<<dec<<100;//输出 166(效果永久)
endl
写入换行并刷新输出流
cout<<endl;
flush
刷新输出流
cout<<flush;
ws
在输入中忽略开头空格
cin>>ws>>number
2.2.2 参数化操纵符
参数化操纵符在 iomanip.h 中定义,其作用一般根据名字可以判断
操纵符 说明
setbase(int)
设置输出数字进制的基,参数 0 为默认,默认为十进制
setw(int)
设字段宽,参数 0 默认,一般为右对齐
setprecision(int)
设小数精度,参数 0 默认,参数设置不包括小数点的总位数
setfill(int)
设填充字符,填充 setw 产生的空白,默认为空格
setiosflags(long)
设 io 标志
resetiosflags(long)
io 标志复位
2.3 I/O 标志
有些操纵符一直有效,需要用标志维护,这些标志列表如下
skipws
在输入时跳过空格
showpoint
显示小数点
left
左对齐
uppercase
用 0X 表示十六进制(而不是 0x),
E 表示浮点指数(而不是 e)
right
右对齐
showpos
正整数前加正号
internal
在符号或进制符后填充
scientific
科学记数法输出小数
dec
十进制输出
fixed
对小数使用定点小数点
oct
十六进制输出
unitbuf
插入后刷新所有流
showba
se
输出值前显示进制符,0 表
示八进制,0x 表示十六进制
stdio
插入后刷新 stdout 与 stderr
各标志位可以用 setiosflags(long)设置,用 resetiosflags(long)复位,比如 cout<<
setiosflags(ios::showpos)<<10<<endll;//显示+10
2.4 其他 I/O 函数
2.4.1 getline
读取整行文本,有三个参数,例子如下:
cin.getline(aLine,40,’Q’);//以’Q’为分隔符,读取一段文本到缓冲区 aLine 中,
读取 40 个字符或读到字符 Q 为止,不指定分隔符默认为换行符,分隔符在
被读取后被抛弃,在缓冲区和流中均不保留。
2.4.2 gcount
用于确定读取的字符数,注意这个方法算入分隔符,如输入”hello\n”,算 6
个字符
2.4.3 ignore
用于忽略输入流中的字符,
忽略 10 个字符,cin.ignore(10);
忽略 10 个字符,遇到 x 停止,cin.ignore(10,’x’);
‘x’被抛弃(未被验证)
2.4.4 get
读取单个字符
2.4.5 put
输出单个字符
3 C 到 C++非面向对象特性概览
3.1 数据类型转换
C++提供了一种像函数调用一样的类型转换,比较以下转换的不同
C C++
Int_value = (int)2.6*(int)100.5; Int_value = int (2.6)*int (100.5);
Xptr =(struct x*)malloc(sizeof(struct x)); Xptr =struct x*(malloc(sizeof(struct x)));
3.2 常数类型限定符 const
3.2.1 概览
可用 const 修饰变量使其为常量而无需用 define 宏命令,注意:常量应再定
义时初始化,另外该变量的地址不能赋值给变量指针,只能赋给 const 指针
3.2.2 const 指针
修饰指针时 const 修饰符与类型的位置不同结果会有很大不同,下面举例说
明:
常量指针:const int *aPointer =&int_var;这里 const 修饰 int *,则 aPointer
指向常量(当然 int_var 不一定真的是常量),int_var
不可通过 aPointer 改变,
但 aPointer 可以被改变
指针常量:int * const aPointer;这里 aPointer 是常量,不可被改变
以上两种可以合在一起用
3.2.3 const 与函数
const 修饰函数参数,表示函数不能改变传入的值
剩余20页未读,继续阅读
资源评论
- kakasi19852014-07-05还不错,记录的几乎都是内部机制与语法注意事项,适合学过一遍C++的人看
liyujinjack
- 粉丝: 0
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功