面向过程的程序设计,主要是,考虑解决问题的先后顺序,措施安排等,具有典型的过程性。
面向对象的程序设计,主要是,建立在各种对象基础的软件开发,每一个具有独立特性和相应功能的个体均可以,作为一个对象加以处理。
面向对象(Object Oriented,OO)
文件
头文件<fstream>
ifstream 和 wifstream 用来读取文件
ofstream 和 wofstream 用来将数据写入文件
fstream 和 wfstream 用于读/写文件,wfstream是字读取操作
filebuf 和 wfilebuf 用来进行实际的字符读写,
ios_base::in //打开文件,用于读取
ios_base::out //打开文件,用于改写或者写入
ios_base::ate //打开文件,用于将文件指针移到文件末尾
ios_base::app //打开文件,写入时始终添加入尾端
ios_base::trunc //打开文件,将先前的内容移除
ios_base::binary //以二进制形式打开文件
文件流状态检查:fail() is_open() eof()
使用临时文件,cstdio库中,char* tmpnam(char* pszname)创建一个临时文件名
#include<iostream>
#include<cstdio>
//TMP_MAX,L_tmpnam变量的值是随机的
void main()
{
using namespace std;
cout<<"This system can generate up tp"<<TMP_MAX<<"temporary name of up to"<<L_tmpnam<<" characters.\n";
char pazName[L_tmpnam] = {
'\0'};
cout<<"Here are ten name: \n";
for(int i =0;i<10;i++)
{
tmpnam(pazName);
cout<<pszName<<endl;
}
return;
}
一般情况,当程序处理异常时一般调用terminate()函数
当在程序中调用其他命令,或者可执行文件时,可选用system()函数
异常处理(C++异常处理代码是 catch子句)
异常已经发生,当异常被try中的语句抛出时,系统通过查看try块后的catch子句列表,来查找能够处理该异常的catch子句。
C++ STL 定义了标准库异常库 exception,头文件<exception>中,但是异常类exception不能捕捉所有的异常
STL的背后蕴藏着泛型化程序设计(GP)的思想,泛型化,是英语翻译来的,本书作者认为,称"普通"更恰当。
template<class Type>
list stack map等
《STL源码剖析》下一本书
#include<iostream>
using namespace std;
template<class T>
class B
{
public:
static int count;
static long size;
public:
static long GetSize()
{
return size;
}
static int GetCount()
{
return count;
}
};
template<class T> int B<T>::count =0;
template<class T> long B<T>::size =