2017年3月15日

static_cast、dynamic_cast、const_cast和reinterpret_cast总结

摘要: 转自:http://www.jellythink.com/archives/205 前言 这篇文章总结的是C++中的类型转换,这些小的知识点,有的时候,自己不是很注意,但是在实际开发中确实经常使用的。俗话说的好,不懂自己写的代码的程序员,不是好的程序员;如果一个程序员对于自己写的代码都不懂,只是知道 阅读全文

posted @ 2017-03-15 22:57 lpx15312 阅读(380) 评论(0) 推荐(0) 编辑

为什么构造函数不能声明为虚函数,析构函数可以

摘要: 构造函数不能声明为虚函数,析构函数可以声明为虚函数,而且有时是必须声明为虚函数。不建议在构造函数和析构函数里面调用虚函数。构造函数不能声明为虚函数的原因是:1 构造一个对象的时候,必须知道对象的实际类型,而虚函数行为是在运行期间确定实际类型的。而在构造一个对象时,由于对象还未构造成功。编译器无法知道 阅读全文

posted @ 2017-03-15 09:48 lpx15312 阅读(509) 评论(0) 推荐(1) 编辑

_stdcall,_cdecl区别

摘要: (1) _stdcall调用 _stdcall是Pascal程序的缺省调用方式,参数采用从右到左的压栈方式,被调函数自身在返回前清空堆栈。 WIN32 Api都采用_stdcall调用方式,这样的宏定义说明了问题: #define WINAPI _stdcall 按C编译方式,_stdcall调用约 阅读全文

posted @ 2017-03-15 09:36 lpx15312 阅读(196) 评论(0) 推荐(0) 编辑

C++的dllexport和dllimport

摘要: __declspec(dllexport) 声明一个导出函数,是说这个函数要从本DLL导出。我要给别人用。一般用于dll中省掉在DEF文件中手工定义导出哪些函数的一个方法。当然,如果你的DLL里全是C++的类的话,你无法在DEF里指定导出的函数,只能用__declspec(dllexport)导出类 阅读全文

posted @ 2017-03-15 09:33 lpx15312 阅读(273) 评论(0) 推荐(0) 编辑

导航