
Visual Studio
文章平均质量分 62
iw1210
这个作者很懒,什么都没留下…
展开
-
具体类、虚类、抽象类(纯虚类)、接口
具体类、抽象类、接口先明确两个概念:具体函数 和 抽象函数1. 具体函数,也称具体方法,即使函数体是实现了的,不是纯虚函数。2. 抽象函数,也称抽象方法,即使函数体是未实现的,是纯虚函数。具体类、抽象类、接口的定义:1. 具体类里的所有方法都是具体的,即所有方法都不是纯虚函数。2. 抽象类里有具体方法,也有抽象方法。3. 接口里的所有方法都是抽象的,即所有方法都是纯虚函原创 2014-06-23 12:25:39 · 7594 阅读 · 2 评论 -
ACE里创建一个任务就创建了一个线程
在ACE里,创建一个任务就创建了一个线程。原创 2014-06-12 14:39:44 · 829 阅读 · 0 评论 -
探究 ACE 的 Proactor_Test 示例中的 Acceptor 和 Connector 分别如何与 Proactor 关联。
探究 ACE 的 Proactor_Test 示例中的Acceptor 和 Connector 分别如何与 Proactor 关联。原创 2014-06-13 13:28:13 · 1111 阅读 · 0 评论 -
静态链接库(LIB)和动态链接库(DLL),DLL的静态加载和动态加载,两种LIB文件。
静态链接库(LIB)和动态链接库(DLL),DLL的静态加载和动态加载,两种LIB文件。一、 静态链接库(LIB,也简称“静态库”)与动态链接库(DLL,也简称“动态库”)的区别 静态链接库与动态链接库都是共享代码的方式,如果采用静态链接库,则无论你愿不愿意,lib 中的指令都全部被直接包含在最终生成的 EXE 文件中了。但是若使用 DLL,该 DLL 不必被包含在最终 EX转载 2014-06-09 20:39:31 · 12047 阅读 · 1 评论 -
用ACE的Reactor模式实现网络通讯时,ACE内部用WSAEventSelect函数把网络事件与一个事件对象关联起来,目的是为了后面用WaitForMultipleObjects函数统一处理。
用ACE的Reactor模式实现网络通讯时,ACE内部用WSAEventSelect函数把网络事件与一个事件对象关联起来,目的是为了后面用WaitForMultipleObjects函数统一处理。原创 2014-07-07 18:26:44 · 1184 阅读 · 0 评论 -
ACE中的两种I/O多路复用模式 Reactor 和 Proactor 的比较
ACE中的两种I/O多路复用模式:Reactor 和 Proactor一般情况下,I/O 复用机制需要事件分离器(event demultiplexor)。事件分离器的作用,即将那些读写事件源分发给各读写事件的处理者,就像送快递的在楼下喊:谁的什么东西送了,快来拿吧。开发人员在开始的时候需要在分离器那里注册感兴趣的事件,并提供相应的处理者(event handlers),或者是回调函数;事转载 2014-06-18 12:46:25 · 1305 阅读 · 0 评论 -
修改ACE的Reactor模式示例中的参数后测试,依据测试结果,猜测Reactor似乎可以突破62个事件的限制。但是...
【猜测】ACE的Reactor模式示例中,事件,可以分批 Reactor超过62限制,但会有事件漏掉。原创 2014-06-19 16:24:32 · 749 阅读 · 0 评论 -
在Windows系统下,ACE中的 Reactor 最终调用 WaitForMultipleObjects 函数,Priority Reactor 和 Proactor 最终调用 select 函数。
在Windows系统下,ACE中的Reactor最终调用系统的WaitForMultipleObjects函数原创 2014-06-19 18:50:34 · 899 阅读 · 0 评论 -
ACE前摄器Proactor模式示例程序
ACE前摄器Proactor模式示例程序服务器端代码:原创 2014-06-13 17:18:05 · 1173 阅读 · 0 评论 -
对ACE反应器Reactor模式的示例程序分析
在ACE 6.0.0 里提供了一个Reactor示例程序,分析在原创 2014-06-17 17:28:32 · 1126 阅读 · 0 评论 -
ACE中创建线程的方法
ACE中创建线程的方法一、使用线程管理器类 ACE_Thread_Manager 创建线程。1. 使用 spawn 函数创建。#include "ace/Thread_Manager.h"void thread_start(void* arg){ printf("Running thread..\n");}int ACE_TMAIN (int argc, ACE_原创 2014-06-20 16:03:15 · 3042 阅读 · 0 评论 -
设计模式:Inheritance(继承) 和 Delegation(委托)
设计模式:Inheritance(继承) 和 Delegation(委托)今天继续讲Design Pattern的内容。所谓 Design Pattern,翻译过来就是设计模式,是OO语言的一些基本运用。今天介绍Design Pattern中的两个基本概念,Inheritance(继承) 和Delegation(委托)。先定义一个位图类:class CBitmap {.原创 2014-06-23 10:27:40 · 5419 阅读 · 0 评论 -
在 VS 中编译项目时出现 error LNK2005 链接错误的解决办法
在 VS 中编译项目时出现 error LNK2005 链接错误的解决办法 【问题】mfcs90d.lib(xxx.obj) : error LNK2005: DllMain@12 already defined in MSVCRTD.lib(xxx.obj)如:mfcs90d.lib(dllmodul.obj) : error LNK2005: _DllMain@12原创 2015-02-13 16:54:56 · 11890 阅读 · 0 评论 -
Windows系统下等待线程退出的方法
Windows系统下等待线程退出的方法 示例代码:#include#include#include#includeDWORD WINAPI ThreadFunc(LPVOID lpParam){ printf("本线程已经结束\n"); return 0;}void main(){ int t; // t 是未原创 2015-03-13 17:30:05 · 8440 阅读 · 1 评论 -
【 程序运行时出现莫名奇妙的异常现象的原因之总结 】
【 程序运行时出现莫名奇妙的异常现象的原因之总结 】1. 第三方的库与对应的 .h 文件版本不一致。解决办法:确定库和对应的 .h 文件版本一致后,重新编译程序。原创 2015-03-13 17:35:25 · 2174 阅读 · 0 评论 -
VS2008检测内存泄漏的方法
在VS2008中需要增加几句代码来检测程序中的内存泄露,代码如下:原创 2014-06-05 15:46:08 · 4007 阅读 · 2 评论 -
[Windows] 通过任务管理器查看程序是否有内存泄漏
在 Windows 系统下运行程序的Debug版,可以通过任务管理器看出程序是否有内存泄漏。演示程序的代码:#include #include // #include #define _CRTDBG_MAP_ALLOC#include #ifdef _DEBUG#define new new(_NORMAL_BLOCK,__FILE__,__LINE__)原创 2015-05-22 11:04:05 · 9389 阅读 · 0 评论 -
配置DirectShow开发环境(VS2010,64位Win8系统)
配置DirectShow开发环境(VS2010,64位Win8系统)目前,新版的DirectShow并没有包括在DirecxtX中一起发布,而是和Windows SDK一起打包发布,因此首先要下载最新的Windows SDK,里面包含了DirectShow的头文件和库文件。下载地址:http://www.microsoft.com/en-us/download/details.转载 2016-03-20 14:27:02 · 6086 阅读 · 2 评论 -
ACE中的TCP通讯
ACE中的TCP通讯,不罗嗦,直接上代码。原创 2014-07-01 20:00:53 · 1975 阅读 · 1 评论 -
Windows下编写系统服务程序的实例
Windows下系统服务程序示例,在VS2008下编译原创 2014-07-23 10:35:28 · 1373 阅读 · 0 评论 -
设计模式:Interface Inheritance (接口继承)和 Implementation Inheritance(实现继承)
设计模式:Interface Inheritance (接口继承)和 Implementation Inheritance(实现继承)先阅读《具体类、抽象类、接口》:http://blog.youkuaiyun.com/iw1210/article/details/33727491纯虚函数(pure virtual):派生类继承这个函数,并实现该函数。虚函数(impure virtual):派生类原创 2014-06-23 12:27:15 · 2431 阅读 · 0 评论 -
VS2008: R6034 Rujntime Error! 的解决办法
在VS2008编译的程序,运行时出现 R6034 Rujntime Error!原创 2014-06-03 18:41:22 · 2122 阅读 · 0 评论 -
[待验证] 用C语言编写Windows服务程序的五个步骤
Windows服务被设计用于需要在后台运行的应用程序以及实现没有用户交互的任务。为了学习这种控制台应用程序的基础知识,C(不是C++)是最佳选择。本文将建立并实现一个简单的服务程序,其功能是查询系统中可用物理内存数量,然后将结果写入一个文本文件。最后,你可以用所学知识编写自己的 Windows 服务。 当初我写第一个 NT 服务时,我到 MSDN 上找例子。在那里我找到了一篇 Nigel转载 2014-06-04 16:45:28 · 574 阅读 · 0 评论 -
ACE 服务配置:静态服务 和 动态服务
ACE允许运行时动态地配置服务和流,无论它们是静态地链接进用户程序中,还是其对象是从共享库中动态地加载,既可以配置服务(一个对象代表一个服务),也可以配置流(基于配置文件而非编译时期装配模块)。运行时配置的益处在于:● 多种类型的服务可以链接进程序中,也可以从共享库中动态地加载,通过配置文件决定运行时需要激活哪些服务;● 在服务初始化时传入不同的参数或指定专用的配置文件转载 2014-06-23 17:44:45 · 2797 阅读 · 0 评论 -
VS2008动态链接库(DLL)的创建与使用 - 导出类函数的DLL
一、创建新的动态链接库(DLL)项目从“File”菜单中,选择“New”,然后选择“Project…”。如下图:在“项目类型”窗格中,选择“Visual C++”下的“Win32”。在“模板”窗格中,选择“Win32 Console Application”。为项目选择一个名称,如 MathFuncsDll,并将其键入“Name:”字段。 为解决方案选择一个名称,如 Dynamic转载 2014-06-06 10:19:21 · 2644 阅读 · 0 评论 -
看ACE如何劫持main函数
看ACE如何劫持main函数用过ACE的都知道,程序的main函数必须写成int main (int argc, char *argv[])的形式,这是为什么呢,看了ACE的源码才知道,原来是……看ace/OS_main.h中的一段代码,就会恍然大悟: # define main \ace_main_i (int, char *[]); \ACE_BEG转载 2014-06-06 18:57:46 · 1735 阅读 · 0 评论 -
VS2008 中右键“转到定义”弹出“未定义符号” 的解决办法。
VS2008 中右键“转到定义”弹出“未定义符号” 的解决办法。 先关掉工程,把工程目录里的 .ncb 格式的文件删掉,再重新打开工程就OK了,据说是个BUG。原创 2014-07-17 09:08:14 · 6043 阅读 · 0 评论 -
Windows下编程,使用CRT库查找内存泄漏。
使用 CRT 库查找内存泄漏Visual Studio 2013 其他版本 Visual Studio 2010Visual Studio 2008Visual Studio 2005Visual Studio 2012此主题尚未评级- 评价此主题内存泄漏,即未能正确释放以前分配的内存,是转载 2014-06-07 09:53:09 · 2217 阅读 · 0 评论 -
如果类的析构函数在main函数返回后调用,内存泄漏检测函数应该放在这个析构函数的末尾。
如果由类的析构函数在main函数返回后调用,内存泄漏检测函数应该放在这个析构函数的末尾。举例说明如下原创 2014-06-07 11:14:17 · 1055 阅读 · 0 评论 -
在win7下用vs2008 编译程序时出现“mt.exe停止工作”问题的解决办法
用vs2008 编译release版的程序时出现“mt.exe停止工作”问题的解决办法 项目>属性>链接器>清单文件>生成清单(后面改为"否")原创 2014-05-26 10:06:05 · 3626 阅读 · 0 评论 -
在win7下用vs2008 编译程序时出现“Microsoft Incremental Linker已停止工作”的解决办法
在win7下用vs2008 编译程序时出现“Microsoft Incremental Linker已停止工作”的解决办法:vs2008在win7下不时:项目->属性->链接器->清单文件->生成清单,把后面的值改为“否”即可。原创 2014-05-26 13:25:00 · 1449 阅读 · 0 评论 -
在VS2008下用ACE创建及使用DLL(动态链接库)
在VS2008下用ACE创建及使用DLL(动态链接库)下面是 ACE-6.0.0 提供的原创 2014-06-09 15:41:53 · 1209 阅读 · 0 评论 -
写个ACE的最简单程序居然还有内存泄漏!查原因,排除它。
下面是ACE的最简单的程序代码:原创 2014-06-06 18:44:04 · 1555 阅读 · 0 评论 -
ACE中的UDP通讯
ACE中的UDP通讯,不罗嗦,直接上代码。原创 2014-07-01 20:14:48 · 2073 阅读 · 1 评论 -
ACE动态服务配置的实例代码分析
ACE-6.0.0提供的动态服务配置实例原创 2014-06-10 20:48:06 · 2149 阅读 · 0 评论 -
ACE 示例中的 ACE_DEBUG 不在窗口输出信息的原因
ACE 的Log_Msg_TestE:\zpz\alysrc\ACE-6.0.0\ACE_wrappers\tests原创 2014-06-11 11:15:17 · 1405 阅读 · 0 评论 -
用ACE的Reactor模式实现网络通讯的例子
用ACE的Reactor模式实现网络通讯的例子,不罗嗦,直接上代码原创 2014-07-01 19:42:45 · 4900 阅读 · 0 评论 -
在Windows系统上安装OpenSSL及在VS2010中使用OpenSSL
在Windows系统上安装OpenSSL及在VS2010中使用OpenSSL操作系统是64位Win8系统。一、安装OpenSSL1.下载 OpenSSL并解压,比如解压到 d:\openssl-1.0.1s 目录。(下载地址:http://www.openssl.org/)2.下载ActivePer并安装,比如安装到d:\perl目录,并在环境变量中添加path=d:\原创 2016-03-21 16:33:21 · 9404 阅读 · 1 评论