2013年8月14日
摘要: cdllbufferstruct编译器微软目录(?)[-]简介COM对象和虚表GUIDQueryInterfaceAddRef and ReleaseIClassFactory对象打包到DLL中CC包含文件定义文件DEF安装DLL和注册对象C实例程序C实例程序修改代码接下来是什么 转载:http://blog.csdn.net/wangqiulin123456/article/details/8092358原文:http://www.codeproject.com/Articles/13601/COM-in-plain-C 如何在不使用MFC、ATL、WTL或其他框架下使用标准C来创... 阅读全文
posted @ 2013-08-14 21:31 猿人谷 阅读(660) 评论(0) 推荐(0) 编辑
摘要: 1. 模板的概念。我们已经学过重载(Overloading),对重载函数而言,C++的检查机制能通过函数参数的不同及所属类的不同。正确的调用重载函数。例如,为求两个数的最大值,我们定义MAX()函数需要对不同的数据类型分别定义不同重载(Overload)版本。//函数1.int max(int x,int y);{return(x>y)?x:y ;}//函数2.float max( float x,float y){return (x>y)? x:y ;}//函数3.double max(double x,double y){return (c>y)? x:y ;}但如果在主 阅读全文
posted @ 2013-08-14 21:00 猿人谷 阅读(550) 评论(0) 推荐(0) 编辑
摘要: C++重要知识点小结---1:http://www.cnblogs.com/heyonggang/p/3246631.htmlC++重要知识点小结---2:http://www.cnblogs.com/heyonggang/p/3253036.html1.什么是智能指针?智能指针是一个行为类似指针但也提供其他功能的类。智能指针类实现普通指针行为的类的区别在于:智能指针通常接收指向动态分配对象的指针并负责删除该对象。用户分配对象,但由智能指针类删除它,因此智能指针类需要实现复制控制成员来管理指向共享对象的指针。只有在撤销了指向共享对象的最后一个智能指针后,才能删除该共享对象。使用计数是实现智能指 阅读全文
posted @ 2013-08-14 17:03 猿人谷 阅读(999) 评论(0) 推荐(0) 编辑
摘要: 转自:http://www.cnblogs.com/haiyupeter/archive/2012/07/29/2613145.html容器:某一类型数据的集合。C++标准顺序容器包括:vector,list,queue容器初始化 vector t; for (int i = 0; i c; // 空容器 vector c1(t); // 容器t的副本 vector c2(3, 4); // 3个值为4的容器 vector c3(t.begin(), t.end() - 10); // 容器t的begin()和end()-... 阅读全文
posted @ 2013-08-14 14:39 猿人谷 阅读(2600) 评论(0) 推荐(0) 编辑
摘要: 模板定义:模板就是实现代码重用机制的一种工具,它可以实现类型参数化,即把类型定义为参数, 从而实现了真正的代码可重用性。模版可以分为两类,一个是函数模版,另外一个是类模版。由于类模板包含类型参数,因此又称为参数化的类。如果说类是对象的抽象,对象是类的实例,则类模板是类的抽象,类是类模板的实例。1.模板的概念模板定义函数模板:template T fun_name(const T&, const T&);类模板:template class class_name { public: T t; void test(const T& t); }模板规则类模板作用域... 阅读全文
posted @ 2013-08-14 14:37 猿人谷 阅读(652) 评论(0) 推荐(1) 编辑
摘要: 1.gets()函数问:请找出下面代码里的问题:#includeintmain(void){charbuff[10];memset(buff,0,sizeof(buff));gets(buff);printf("\nThebufferenteredis[%s]\n",buff);return0;}答:上面代码里的问题在于函数gets()的使用,这个函数从stdin接收一个字符串而不检查它所复制的缓存的容积,这可能会导致缓存溢出。这里推荐使用标准函数fgets()代替。2.strcpy()函数问:下面是一个简单的密码保护功能,你能在不知道密码的情况下将其破解吗?#includ 阅读全文
posted @ 2013-08-14 14:33 猿人谷 阅读(466) 评论(0) 推荐(0) 编辑
摘要: 来源:http://www.cnblogs.com/feisky/archive/2010/03/05/1679160.htmlC/C++是最主要的编程语言。这里列出了50名优秀网站和网页清单,这些网站提供c /c++源代码 。这份清单提供了源代码的链接以及它们的小说明。我已尽力包括最佳的C/C++源代码的网站。这不是一个完整的清单,您有建议可以联系我,我将欢迎您的建 议,以进一步加强这方面的清单。添加:http://www.boost.org/1、http://snippets.dzone.com/tag/c/--数以千计的有用的C语言源代码片段2、http://www.hotscripts 阅读全文
posted @ 2013-08-14 14:21 猿人谷 阅读(738) 评论(2) 推荐(1) 编辑
摘要: 来源:http://www.cnblogs.com/feisky/archive/2009/11/04/1595990.html最近又重新看了Effective C+,不过到现在还是有好多地方不懂的,先记下笔记,待用的时候再细细琢磨。条款1:尽量用const和inline而不用#define这个条款最好称为:“尽量用编译器而不用预处理”,因为#define经常被认为好象不是语言本身的一部分。用 const的好处是,调试时,可以直接获取变量,而非定义的数字,这个在使用gdb跟踪代码的时候很有用,比如#define NUM 123;如果在gdb中print NUM,会出现NUM找不到符号表的问题, 阅读全文
posted @ 2013-08-14 14:19 猿人谷 阅读(502) 评论(0) 推荐(0) 编辑
摘要: 前段时间重新学习C++,主要看C++编程思想和C++设计新思维。对模版的使用有了更进一层的了解,特总结如下:下面列出了模版的常用情况://1. 模板类静态成员template struct testClass { staticint _data; }; templateint testClass::_data =1; templateint testClass::_data =2; int main( void ) { cout ::_data) ::_data) struct testClass { testClass() { cout struct testClass{ testC... 阅读全文
posted @ 2013-08-14 14:13 猿人谷 阅读(495) 评论(0) 推荐(0) 编辑