|
|
发表于 2009-2-27 17:30:00
|
显示全部楼层
Re:写了这么多年程序,越写越懵了。。。。
1.使用 C 函数:fopen,fclose,fread,fwrite.....
2.使用 C++ 函数:fstream,ifstream,ofstream......
3.使用 MFC 库函数:CFile....
4.使用 win32 API:createFile,readfile,writefile....
其实不是lz的错,而是C++本身经过多年的发展而出现的问题。一方面由于C/C++为了可移植,标准库的东西都是各个系统的功能子集,所以每个平台都有自己的API。另一方面,C++早期为了区别于C,提供类型安全的库,所以有了C++标准流,但其实这东西不太成功,C的stdio反而生命力更强。MFC的类只是Win32的封装。
类似的例子,典型的字符串,有C的char*, wchar_t*, std::string,std:wstring, CString, BSTR, _bstr_t, System::String,还有大多数第三方库都定义了自己的字符串类型……
还有int这样的基本类型,每个library都定义了自己的符号,int32, i32, INT, INT32, DWORD, LONG,……
所以,最好是根据你最常用的library的风格,尽可能的统一到一种。对MFC和Win32这种封装关系的,能用简单的就用简单的。 |
|