摘要:通过上一篇的学习和实践,已经知道COM是怎么一回事了,并且知道如何调用COM组件。 总结一下:COM是component object model,组件对象模型的意思,com对象和com类不同于一般c++或vb或delphi中的对象和类,COM对象和COM类是独立于编程语言的,自有一套内存布局规范,所以可以实现二进制级的功能性重用,COM诞生的目的就是这个:跨越编程语言与开发平台的模块重用。(虽然...
阅读全文
随笔分类 - C / C++
摘要:COM -- 跨平台跨语言的解决方案。 这篇笔记是我学习过程中为了加深理解而写的,难免有误,如果你想学习COM,仅供参考,原文地址我贴出来,我也只是将原文照抄并整理一下条理性而已。 http://www.vckbase.com/document/viewdoc/?id=212 1. COM是什么 COM是Component Object Model的缩写,直译为中文就是组件对象模型,这句话是...
阅读全文
摘要:以后杂项积累的乱七八糟的东西就往这里放好了,C++里面的乱七八糟的东西太多了。 ==================================================== icrsint.h 包含了VC++扩展的一些预处理指令,宏的定义,做COM编程的时候包含一下该文件。 ==================================================== 字符串...
阅读全文
摘要:一 IOStream的基本概念 1 stream对象 stream就是一条数据流,是由某个类别定义出来的具有特定类型的对象,输出操作被定义为“数据流入stream”,输入操作被称为“数据流出stream”,另外有些标准的I/O通道(Channels)被定义为标准的全局对象,比如basic_istream的实例cin,basic_ostream的实例cout。 2 stream类别 stream主要...
阅读全文
摘要:fstream类可以读也可以写,继承了ifstream和ofstream两个类的功能。 在做文件I/O的时候,一般的操作也就是 1 打开文件: 输出out,输入in,打开时清空trunc,追加方式app 2 读取字符,读取行: getch, getline 3 写入字符,写入行: put, opratorget ofstream支持tellp seekp p->put fstream两个都支...
阅读全文
摘要:该继续看ifstream类了。 ifstream继承自istream类,istream类只有一个iostream库中创建好的cin对象,对应一个输入设备就是pc机的键盘,而ifstream类则没有在fstream中有创建好的对象,原因上一篇文章已经说了。 ifstream是文件输入类,输入的源是文件,目标是内存,从文件向内存输入,也就是读取文件的意思了。 如果想读取一个文件,简单的示例代码如...
阅读全文
摘要:我的整理都是根据网络上的资料找出来的,不知道正确性,但是都是我目前的理解。 string.h是c语言的字符串操作函数库的声名文件,包括strcpy strcmp等等标准c语言函数。 cstring是加入了命名空间概念的string.h,内部是简单的: namespace std { #include } 然后则是c++字符串类的头文件,字符串操作类以模板方式编写。 推荐使用string类,...
阅读全文
摘要:iostream库不仅支持终端设备的输入输出,还支持文件的输入输出,和文件有关的输入输出类声明在fstream头文件中,有三个类负责文件的输入输出 1) ifstream类:从istream类派生。 2) ofstream类:从ostream类派生。 3) fstream类:从iostream类派生。 由于文件的输入输出和键盘鼠标的输入输出是不一样的,一般pc机只有一个键盘设备,所以iostr...
阅读全文
摘要:c语言的标准输入输出库是stdio.h 是一个函数库而不是类库。 其中包括了我们最常使用的scanf printf 都是一些独立的全局函数,因为C语言是不支持类的。 c++的标准输入输出库iostream 是一个类库,以类的形式组织,使用该库中的类要先引用命名空间:using namespace std; 最常使用的是cin和cout,这两个都是对象,cin是istream类的对象,cou...
阅读全文
摘要:使用winsock编程要先包含winsock2.h头文件 WSAStartup函数是载入sock函数库的 int WSAStartup(version, &wsadata); 返回0就是载入成功,version可以是0x101或者0x202,wsadata是WSADATA类型的。 WSACleanup(); 卸载函数库的。 sockaddr_in结构是TCP/IP通信中的Socket的地址。...
阅读全文
摘要:以前总以为那个选择文件的窗口要自己做,后来才知道不过是一个API而已. 这个API函数的声明是这个样子的: WINCOMMDLGAPI BOOL APIENTRY GetOpenFileNameA(LPOPENFILENAMEA); WINCOMMDLGAPI BOOL APIENTRY GetOpenFileNameW(LPOPENFILENAMEW); #ifdef UNICODE #def...
阅读全文
摘要:WINBASEAPI DWORD GetTickCount(VOID); 返回自系统启动到现在的毫秒数,每隔49.7天就清零。
阅读全文
摘要:BOOL GetComputerName( LPTSTR lpBuffer, LPDWORD lpnSize ); GetComputerName函数用来获取计算机的名称,lpBuffer是TCHAR[]类型,TCHAR的数量可以设置为MAX_COMPUTERNAME_LENGTH+1,lpnSize就是lpBuffer的位数
阅读全文
摘要:MessageBox函数用于弹出对话框 原型如下 int MessageBox( HWND hWnd, LPCTSTR lpText, LPCTSTR lpCaption, UINT uType ); 该函数也分为MessageBoxA MessageBoxW两个版本。 hWnd是所属的父对话框. lpText是需要显示的内容 lpCaption是窗口标题文字 u...
阅读全文
摘要:const int MAXSIZE_APPBUF = 256; TCHAR lpszApp[MAXSIZE_APPBUF]; LoadString(NULL, IDS_WELCOME, lpszApp, MAXSIZE_APPBUF); AfxMessageBox(lpszApp); LoadString,可以载入一个资源文件里的字符串,是一个宏,对应LoadS...
阅读全文
摘要:int WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ); The WinMain function is called by the system as the initial entry point for windows-ba...
阅读全文