C++高级
ch3rry
每天早上醒来,看见你和阳光都在,这就是我想要的未来。
展开
-
模板(Templates)
模板(Templates)是ANSI-C++ 标准中新引入的概念。如果你使用的 C++ 编译器不符合这个标准,则你很可能不能使用模板。 函数模板( Function templates) 模板(Templates)使得我们可以生成通用的函数,这些函数能够接受任意数据类型的参数,可返回任意类型的值,而不需要对所有可能的数据类型进行函数重载。这在一定程度上实现了宏(macro)的作用。它们的原型...原创 2019-07-20 10:54:12 · 393 阅读 · 0 评论 -
名空间 (Namespaces)
通过使用名空间(Namespaces)我们可以将一组全局范围有效的类、对象或函数组织到一个名字下面。换种说法,就是它将全局范围分割成许多子域范围,每个子域范围叫做一个名空间(namespaces). 使用名空间的格式是: namespace identifier { namespace-body } 这里identifier 是一个有效的标示符,...原创 2019-07-20 11:05:08 · 350 阅读 · 0 评论 -
出错处理
本节介绍的出错处理是ANSI-C++ 标准引入的新功能。如果你使用的C++ 编译器不兼容这个标准,则你可能无法使用这些功能。 在编程过程中,很多时候我们是无法确定一段代码是否总是能够正常工作的,或者因为程序访问了并不存在的资源,或者由于一些变量超出了预期的范围,等等。 这些情况我们统称为出错(例外),C++ 新近引入的三种操作符能够帮助我们处理这些出错情况: try, throw 和 ca...原创 2019-07-20 11:07:39 · 143 阅读 · 0 评论 -
预处理指令
预处理指令是我们写在程序代码中的给预处理器(preprocessor)的 命令,而不是程序本身的语句。预处理器在我们编译一个C++程序时由编译器自动执行,它负责控制对程序代码的第一次验证和消化。 所有这些指令必须写在单独的一行中,它们不需要加结尾的分号;。 #define 在这个教程的开头我们已经提到了一种预处理指令: #define ,可以被用来生成宏定义常量(defined constan...原创 2019-07-20 11:10:07 · 140 阅读 · 0 评论 -
C++ 标准函数库 —— 文件的输入输出 (Input/Output with files)
C++ 通过以下几个类支持文件的输入输出: ofstream: 写操作(输出)的文件类 (由ostream引申而来) ifstream: 读操作(输入)的文件类(由istream引申而来) fstream: 可同时读写操作的文件类 (由iostream引申而来) 打开文件(Open a file) 对这些类的一个对象所做的第一个操作通常就是将它和一个真正的文件联系起来,也就是说打开一个文件。被...原创 2019-07-20 11:24:57 · 1030 阅读 · 0 评论