2012-07-14 23:04
⁄ 工业·编程
⁄ 共 494字
CString转换为std::string,网上通行的做法是利用CString的GetBuffer函数。具体做法如下(编译环境为VS C++ 2005+sp1, Win XP+sp3,多字节字符集编译,以下同):
CString strMFC= _T("Hello!");
std::string str2(strMFC.GetBuffer());
strMFC.ReleaseBuffer();
CString strMFC= _T("Hello!"); std::string str2(strMFC.GetBuffer()); strMFC.ReleaseBuffer();
这种做法在unicode字符集下也可行。今天...
VC阅读全文
2012-07-14 23:00
⁄ 工业·编程
⁄ 共 3463字
是时候总结一下__declspec(dllimport)的作用了。可能有人会问:__declspec(dllimport)和__declspec(dllexport)是一对的,在动态链接库中__declspec(dllexport)管导出,__declspec(dllimport)管导出,就像一个国家一样,有出口也有进口,有什么难理解的呢?这是一种很自然的思路,开始我也是这样理解。
但是在两年前的一个项目中,我发现不用__declspec(dllimport)似乎也可以。比如现在我新建一个使用共享MFC DLL的规则DLL工程:...
c++阅读全文
2012-07-14 22:58
⁄ 工业·编程
⁄ 共 3992字
前天同事问我在CFileDialog中多选时按确定按钮后DoModal函数的返回值是IDCANCEL。我说不太可能吧。他的代码大致如下:
static TCHAR BASED_CODE szFilter[] = _T("TXT(*.txt)|*.txt||");
CFileDialog dlg(TRUE,_T("txt"), NULL,OFN_HIDEREADONLY|OFN_ALLOWMULTISELECT,
szFilter, NULL );
INT_PTR nResult = dlg.DoModal();
static TCHAR BASED_CODE szFilter[] = _T("TXT(*.txt)|*.txt||"...
c++阅读全文
2012-07-14 21:44
⁄ 工业·编程
⁄ 共 519字
1、关联(association) 说明:是一种结构关系,它指明一个事物的对象与另一个事物的对象间的联系。给定一个连接两个类的关联,可以从一个类的对象导航到另一个类的对象,反之亦然。 图形:一条实线,可以带箭头。 属性:名称、角色(关联中靠近它的一端的类对别外一端的类呈现的职责)、多重性。 2、聚合() 说明:一种特殊的关联,表示“整体/部分”的关系,其中一个类描述了一个较大的事物,它由较小的事物组...
uml阅读全文
2012-07-14 21:39
⁄ 工业·编程
⁄ 共 715字
交换机和路由器两个概念容易让人混淆。
首先从工业标准的网络分层开始说起,第一层也就是物理层,通俗的讲就是那些可以直接通信的那些硬件,没有什么管理功能,最简单的包括就是那根连接着的网线。第二层是数据链路层,这一层之间的数据通信是通过MAC地址(Media access control)来区别实现的,如果对MAC地址概念比较模糊的话,就说一下网卡,每一个网卡都有一个自己在全世界独一无二的...
网络设备阅读全文
2012-07-14 21:24
⁄ 工业·编程
⁄ 共 929字
typedef是相当于重新定义一种类型,而define仅仅是简单的字符串替换.常用的陷阱是使用define来使用多个变量的替换,容易出错。
举个例子:
1.#define int * PINTA
2.typedef int * PINTB
使用上边的两种例子来定义两个变量
3.PINTA a,b;
4.PINTB c,d;
第3行中其实a的类型是int *,而b的类型是int,解释一下:在看到define的时候只要把define指定的内容按照原来的情况直接复制下来看结果...
c++阅读全文
2012-07-14 21:19
⁄ 工业·编程
⁄ 共 501字
先看一个例子:
typedef int (*pFun)(int a, int b);
pFunp FunTest;
在上边的代码中,初看会使人误解,怎么能使用函数指针pFun来声明一个类型呢?相信很多人和我都有这样同样的感受。我就先从typedef说起,使用typedef能定义新的类型
比如:
typedef int int_32;
这里int_32就是一个新的类型,虽然这个类型和int是一样的,那我们就可以将ty...
c++阅读全文
2012-07-14 06:30
⁄ 工业·编程
⁄ 共 2045字
使程序实现的逻辑更加清晰,可读性强。
使多人合作开发的分工更加明确,容易控制。
能充分利用可以重用的代码。
抽象出可公用的模块,可维护性强,以避免同一处修改在多个地方出现。
系统运行可方便地选择不同的流程。
可基于模块化设计优秀的遗留系统,方便的组装开发新的相似系统,甚至一个全新的系统。
在软件高层设计中,如何分解模块是首要考虑的问题。目前业界公认模块划分要按照“高内聚,低耦...
软件开发阅读全文
2012-07-14 00:50
⁄ 科技·视野
⁄ 共 3305字
运营商正处在一个严峻的市场竞争环境中,移动互联网的迅猛发展使得运营商的位置日益边缘化。从很早开始,运营商就重视IT系统的建设,通过塑造统一的IT系统,为用户提供更好的业务体验。
云计算让IT更高效
运营商正在利用云计算改造传统的IT系统,一方面节省大量的IT系统建设投资,另一方面,也是更重要的,提升IT系统的能力,让IT系统更加高效。
一方面,运营商希望通过塑造高效IT来显著提升企业效益,另一方面...
IT, 云计算阅读全文
2012-07-13 22:56
⁄ 工业·编程
⁄ 共 4361字
DLL的动态链接有两种方法。一种是加载时动态链接(Load_time dynamic linking)。Windows搜索要装入的DLL时,按以下顺序:应用程序所在目录→当前目录→Windows SYSTEM目录→Windows目录→PATH环境变量指定的路径。
前天看到这几句,突然设计出一道自认绝妙的笔试题: "如果采用加载时动态链接的方式,Windows搜索要装入的DLL采用怎样的顺序?" 这个是基础题,估计你很容易答出(答案就是上面的)。呵呵,我还有后着呢...
dll阅读全文