
c++
灰暗角落里的琴
一直持续追逐梦想ing...
展开
-
记录代码隔离,即版本中不需要的代码就无需编译
代码隔离方法写作,原则 不需要的代码就无需编译主要思路: 一个factory,主要存在一个list列表 一个宏,将当前类注册到这个list列表中,利用构造函数实现类的调用具体的代码见明天的博客原创 2014-03-18 23:03:08 · 878 阅读 · 0 评论 -
MFC中点击文本框显示提示,点击其他地方提示消失的方法
BOOL CPrjDlg::PreTranslateMessage(MSG* pMsg){if ((pMsg->message == WM_LBUTTONDOWN) || (pMsg->message == WM_LBUTTONUP)) //核心点 { if (GetFocus() == GetDlgItem(IDC_EDIT_PRJ_NAME)原创 2017-08-03 17:28:25 · 1376 阅读 · 0 评论 -
成功安装mysql后,为何服务管理器里找不到MYSQL服务名
解决方案:(参考以下命令)1、打开cmd,切换到mysql的bin目录下 2、 D:\Program Files\MySQL5.1\bin>mysqld.exe -installService successfully installed.2、 D:\Program Files\MySQL5.1\bin>net start mysqlMySQL 服务已经启动成功。或者直接在服务里启动m转载 2015-06-14 10:11:25 · 5098 阅读 · 0 评论 -
vs2012 C#调用c++ dll 调试跟踪到代码内
如下图,在“链接器”->“调试”信息中,选择生成调试信息原创 2015-06-11 22:52:52 · 1918 阅读 · 0 评论 -
在C++中调用DLL中的函数
1.dll的优点代码复用是提高软件开发效率的重要途径。一般而言,只要某部分代码具有通用性,就可将它构造成相对独立的功能模块并在之后的项目中重复使用。比较常见的例子是各种应用程序框架,ATL、MFC等,它们都以源代码的形式发布。由于这种复用是“源码级别”的,源代码完全暴露给了程序员,因而称之为“白盒复用”。“白盒复用”的缺点比较多,总结起来有4点。 暴露了源代码;多份拷贝,造成存储浪费;转载 2015-05-17 21:38:35 · 470 阅读 · 0 评论 -
C# 调用C++ dll问题总结一 ——无法找到dll
无法找到dll这个问题花费了我大概2天时间才搞定。一般问题网上都有,我只提最关键一点:Win7 家庭版 是搞不定的。只能用Win7旗舰版原创 2015-05-12 09:55:37 · 1481 阅读 · 0 评论 -
DLL Hell(DLL地狱)问题
DLL动态链接库是程序复用的重要方式,DLL可以导出函数,使函数被多个程序复用,DLL中的函数实现可以被修改而无需重新编译和连接使用该DLL的应用程序。作为一名面向对象的程序员,希望DLL可以导出类,以便在类的层次上实现复用。所幸的是,DLL确实也可以导出类。然而事实却没这么简单,导出类的DLL在维护和修改时有很多地方必需很小心,增加成员变量、修改导出类的基类等操作都可能导致意想不到的后果,也转载 2015-04-10 10:04:37 · 589 阅读 · 0 评论 -
Activex、OLE、COM、OCX、DLL之间区别、联系
转自:http://baike.baidu.com/view/393671.htm概述 .ocx是ocx控件的扩展名,与.exe .dll同属于PE文件。下面说说什么是ocx控件! OCX 是对象类别扩充组件。 如果你用过Visual Basic或者Delphi一类的可视化编程工具,那么对控件这个概念一定不会陌生,就是那些工具条上的小按钮,如EditB转载 2015-04-04 18:12:35 · 722 阅读 · 0 评论 -
文件解析C语言代码
//滤除字符串首尾空格,对于整行注释的,直接返回失败app_u32 app_trimline(app_u8 *pline, app_u8 **ppheader, app_u8 **pptail){ app_u8* pheader = APP_NULL; app_u8* ptail = APP_NULL; pheader = pline;原创 2014-12-31 16:46:28 · 564 阅读 · 0 评论 -
快速排序法
typedef struct{ app_u32 ulcommandid; //命令字ID app_u32 ulseq; //序号,规则每个命令字都对应一批序号,从0开始,即对每个命令下到对应pid进行时序控制 app_u32 uldstpid; //目标PID} st_oamreg_map; #define MAKE_CMDSE原创 2014-12-17 14:18:43 · 498 阅读 · 0 评论 -
C++中类成员函数未实现,是否能够编译链接通过?
在写代码中经常发现有些类中的成员hansh原创 2014-07-12 11:37:27 · 1586 阅读 · 0 评论 -
C++与Java的语法区别
C++与Java的语法区别首先,两个大的不同是主函数和怎样编译的不同,接下来是许多小的区别。main 函数C++//自由浮动的函数int main( int argc, char* argv[]){ printf( "Hello, world" );}Java// 每个函数都必须是一个类的一部分;当java 运行是一个特定类的主函数会被调用转载 2014-06-22 15:29:01 · 425 阅读 · 0 评论 -
C++中纯虚函数的实现原理是什么,为什么该纯虚函数不能实例化?
虚函数的原理采用 vtable,定义后必须。那么类中含有纯虚函数时,其vtable 不完全,有个空位。即“纯虚函数在类的vftable表中对应的表项被赋值为0。也就是指向一个不存在的函数。由于编译器绝对不允许有调用一个不存在的函数的可能,所以该类不能生成对象。在它的派生类中,除非重写此函数,否则也不能生成对象。”原创 2014-07-12 11:09:23 · 3899 阅读 · 2 评论 -
C++内联函数与宏定义
用内联取代宏:1.内联可调试;2.可进行类型安全检查或自动类型转换;3.可访问成员变量。另外,定义在类声明中的成员函数自动转化为内联函数。 文章(一)内联函数与宏定义 在C中,常用预处理语句#define来代替一个函数定义。例如: #define MAX(a,b) ((a)>(b)?(a):(b)) 该语句使得程序中每个出现转载 2014-07-12 10:41:27 · 485 阅读 · 0 评论 -
快速检验NRV优化测试代码
在读《深度探索C++对象模型》一书shi原创 2014-07-10 16:58:51 · 676 阅读 · 0 评论 -
C#与C++对应的类型
//c++:HANDLE(void *) ---- c#:System.IntPtr //c++:Byte(unsigned char) ---- c#:System.Byte //c++:SHORT(short) ---- c#:System.Int16 //c++:WORD(u转载 2017-08-31 11:37:39 · 1082 阅读 · 0 评论