编程札记
来源:互联网 发布:帝国cms 数据备份目录 编辑:程序博客网 时间:2024/06/05 06:42
1.只有启用/clr选项时(托管)的类才可以加访问修饰符
public class MyClass{...};
2.静态成员函数不可以同时声明virtual、const、volatile修饰符。
class base{
virtual static void func1();//错误
static void func2() const;//错误
static void func3() volatile;//错误
};
3.C++连接错误error LNK2001:未能解析的外部符号(unresolved external symbol),一般是由于未添加函数依赖的.lib文件:
方法一:在项目属性"连接"里添加.lib文件
方法二:#pragma comment(lib,"xxxxx.lib")
4.C++定义数组时数组名与"[]"之间必须有空格:
int a[]={...}; //错误
int a []={...}; //正确
5.在.h中已定义的可选参数在实现时不要再写默认值,静态方法不要再加static修饰符
static int TsWriteFile(const string &fileName, void *buffer, DWORD count, boolNO_EXIST_CREATE=false);
int TsWriteFile(const string &fileName, void *buffer, DWORD count, boolNO_EXIST_CREATE){...}
6. 为了兼顾移植性,提高效率,在写带有返回值函数(尤其是复杂数据类型)时应避免这种写法:
classA f(){classA a(...); return a}
应采用下面种写法:
classA f(){return classA(...);}
调用: classA s=f();
第一种写法会产生一个临时对象,在返回时会调用classA的复制构造函数,在classA含有较多数据成员时会产生不必要的开销(调高编译器的优化等级也许可以避免)。大部分编译器都对第二种写法做了默认优化。
- 编程札记
- 编程札记
- Symbian 编程札记
- Linux编程札记
- MobileBASIC 编程札记 (一)
- CUDA编程札记
- CUDA编程札记
- 多线程编程札记
- windows编程学习札记
- 编程札记一
- CUDA编程札记
- 写给妹妹的编程札记
- 编程师札记第一卷序语
- C语言编程技巧札记
- 编程师札记第一卷序语
- Java并发编程札记-目录
- 编程人生-学习札记-1-编程风格
- 札记
- 用 sqlite3.dll 和 sqlite3.def 生成 sqlite3.lib
- 没有找到libgcc_s_sjlj-1.dll
- Mongodb VS Mysql 查询性能
- navicat for mysql 9 注册码
- linux内核定时器
- 编程札记
- 教会你完全搞定MySQL数据库 轻松八句话
- (一)linux驱动之混杂设备驱动(led)
- Unix网络编程服务器设计方式之三
- 枚举中的命令行为
- 浅述MongoDB的管理操作
- oracle数据库导入导出命令!
- 删除文件
- dos 中 返回磁盘根目录及查看帮助