C++
文章平均质量分 83
xingyuan1hao
微信:xingyuan1hao
GitHub: https://github.com/xingyuan1hao
展开
-
this指针
在前面曾经提到过: 每个对象中的数据成员都分别占有存储空间,如果对同一个类定义了n个对象,则有n组同样大小的空间以存放n个对象中的数据成员。但是,不同对象都调用同一个函数代码段。那么,当不同对象的成员函数引用数据成员时,怎么能保证引用的是所指定的对象的数据成员呢?假如,对于例9.6程序中定义的Box类,定义了3个同类对象a,b,c。如果有a.volume( ) ,应该是引用对象a中的h转载 2013-03-18 22:15:46 · 492 阅读 · 0 评论 -
继承与组合混用
继承与组合混用我们知道,在一个类中可以用类对象作为数据成员,即子对象,实际上,对象成员的类型可以是本派生类的基类,也可以是另外一个已定义的类。在一个类中以另一个类的对象作为数据成员的,称为类的组合(composition)。类的组合和继承一样,是软件重用的重要方式。组合和继承都是有效地利用已有类的资源。但二者的概念和用法不同。通过继承建立了派生类与基类的关系,它是一种“是”的关系,如“白猫原创 2017-07-09 00:00:01 · 390 阅读 · 0 评论 -
map简单使用
转载:https://blog.csdn.net/google19890102/article/details/51720305https://www.cnblogs.com/qigaohua/p/5803629.html 标准库map类型是一种以键-值(key-value)存储的数据类型。以下分别从以下的几个方面总结:· map对象的定义和初始化· map对象的基本操...转载 2018-04-12 23:59:13 · 172 阅读 · 0 评论 -
常用API
1、使用clock()函数测试程序时间头文件ctime中的库函数clock()提供了测试函数运行时间的方法:1、clock()返回类型为clock_t类型2、clock_t实际为long 类型, typedef long clock_t3、clock() 函数,返回从 开启这个程序进程 到 程序中调用clock()函数 时之间的CPU时钟计时单元(clock tick)数(挂钟时间),返回单...转载 2018-05-15 19:29:01 · 197 阅读 · 0 评论 -
进程间通信(共享内存)
转载:https://blog.csdn.net/wh_sjc/article/details/70283843https://www.cnblogs.com/Jimmy1988/p/7706980.htmlhttps://blog.csdn.net/a1414345/article/details/69389647https://www.cnblogs.com/fangsheng...转载 2018-08-23 20:07:32 · 193 阅读 · 0 评论 -
常用网络库
转载:http://qiusuoge.com/12280.html 在开源的C/C++网络库中, 常用的就那么几个, 在业界知名度最高的, 应该是ACE了, 不过是个重量级的大家伙, 轻量级的有libevent, libev, 还有 Boost的ASIO。ACE是一个大型的中间件产品,代码20万行左右,过于宏大,一堆的设计模式,架构了一层又一层,使用的时候, 要根据情况,看你从那一...转载 2018-11-06 13:52:36 · 666 阅读 · 0 评论 -
fstream ofstream ifstream垃圾设计
这接口写的真TMD的垃圾,操作文件流三个类接口,功能又没有完全分开,操作不灵活,相互使用又累赘。转载:https://www.cnblogs.com/zhoug2020/p/8427277.html https://blog.csdn.net/m0_37901643/article/details/75634657https://blog.csdn.net/qq_26304333/a...原创 2018-11-14 19:56:56 · 136 阅读 · 0 评论 -
引用指针混合使用
p: 是一个指针的指针,在这里我们不会去对它做修改,否则会丢失这个指针指向的指针地址 *p: 是被指向的指针,是一个地址。如果我们修改它,修改的是被指向的指针的内容。换句话说,我们修改的是main()方法里 *pn指针 **p: 两次解引用是指向main()方法里*pn的内容int value = 3;void func(int **p){ *p = &va...转载 2018-12-26 20:01:06 · 440 阅读 · 0 评论 -
libcurl库使用
基本应用:转载: https://www.cnblogs.com/moodlxs/archive/2012/10/15/2724318.html 进阶多线程应用:转载: http://www.cnblogs.com/jikexianfeng/p/6055024.html源码下载,示例代码,在docs_examples目录下。...转载 2018-12-27 19:10:07 · 125 阅读 · 0 评论 -
C++反射简单示例代码
反射的概念:指程序在运行时,访问、检测和修改它本身状态或行为的一种能力。反射的作用在计算机编程语言中,反射机制可以用来:获取类型的信息,包括属性、方法动态调用方法动态构造对象从程序集中获得类型反射的缺点性能:反射可以理解成是一种解释操作,这个过程总是要慢于直接调用的。当然,性能问题的程度是可以控制的,如果程序在很少涉及的地方使用,性能将不会是一个问题。反射模糊了程序...转载 2019-01-28 19:03:22 · 270 阅读 · 0 评论 -
序列化和反序列化
转载:https://www.cnblogs.com/keyi/p/5955220.html序列化和反序列化 当两个进程在进行远程通信时,彼此可以发送各种类型的数据。无论是何种类型的数据,都会以二进制序列的形式在网络上传送。发送方需要把这个对象转换为字节序列,才能在网络上传送;接收方则需要把字节序列再恢复为对象。 把对象转换为字节序列的过程称为对象的序列化。 ...转载 2019-01-29 11:12:22 · 111 阅读 · 0 评论 -
Boost Serialization序列化使用
Boost Serialization序列化使用转载 2019-01-29 19:15:12 · 208 阅读 · 0 评论 -
继承与组合 C++(五)
转载:http://c.biancheng.net/cpp/biancheng/view/240.html c语言中文网http://www.jizhuomi.com/software/53.html 鸡啄米http://blog.sina.com.cn/s/blog_7289aca90100q250.html梦想成真VS环宇1.继承如果A是基类,B是A的派生类,那原创 2017-05-07 18:04:54 · 308 阅读 · 0 评论 -
指针编程上的应用
转载:https://github.com/xuelangZF/CS_Offer/blob/master/C%2B%2B/Pointer.md 作者:xuelangZF为了说清楚什么是指针,必须弄清楚数据在内存中是如何存储的,又是如何读取的。如果在程序中定义了一个变量,在编译时就给这个变量分配内存单元。系统根据程序中定义的变量类型,分配一定长度的空间。例如,C++编译系统一般转载 2017-05-07 17:30:54 · 540 阅读 · 0 评论 -
函数重载 C++(一)
C++ 函数重载转载:http://blog.csdn.net/xiejingfa/article/details/48496593作者:谢景发www.cnblogs.com/skynet/archive/2010/09/05/1818636.html 作者:吴秦函数重载函数重载的定义是:在相同的作用域中,如果函数具有相同名字而仅仅是形参表不同,此时成为函数重载。注意函数重原创 2017-04-23 18:12:50 · 256 阅读 · 0 评论 -
结构体定义 typedef struct 学习
转载:http://blog.sina.com.cn/s/blog_4fdabc820100fsxu.htmltypedef是类型定义的意思。typedef struct 是为了使用这个结构体方便。具体区别在于:若struct node {}这样来定义结构体的话。在申请node 的变量时,需要这样写,struct node n;若用typedef,可以这样写,typed转载 2013-08-29 17:11:22 · 736 阅读 · 0 评论 -
C++及Windows异常处理(try,catch; __try,__finally; __try, __except)——一道笔试题引起的探究
题目: int* p = 0x00000000; // pointer to NULL puts( "hello "); __try{ puts( "in try "); __try{ puts( "in try ");转载 2013-09-14 14:37:21 · 699 阅读 · 0 评论 -
VC++ ScrollBar控件的使用方法
1、在对话框中拖入CScrollBar控件,并修改ID,2、示例一:void CTestScrollBarDlg::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar){ // TODO: 在此添加消息处理程序代码和/或调用默认值 int TempPos = pScrollBar->GetScrollPos();原创 2013-09-14 17:15:04 · 2150 阅读 · 0 评论 -
Windows CE驱动开发常用宏定义
(随时更新,欢迎大家来补充!)宏的确是个好武器,在CE驱动开发过程中,正确,准确的使用恰当的宏,能使得代码非常精炼,书之精彩,阅之愉悦.对于开发中经常用到的一些宏,我在这里做了一些总结.寄存器操作8bit#define INREG8(x) READ_REGISTER_UCHAR((UCHAR*)(x))#define OUTREG8(x, y转载 2013-11-29 11:18:46 · 825 阅读 · 0 评论 -
C++面试题
1.库函数strcpy的工作方式char * strcpy( char *strDest, const char *strSrc ) {assert((strDest != NULL) && (strSrc != NULL) );char*address = strDest; while((*strDest++ = * strSrc++) != ‘\0’ ); return转载 2014-02-20 16:06:18 · 673 阅读 · 0 评论 -
值得实践的开源库
值得学习的C开源项目代码 1. Webbench Webbench是一个在Linux下使用的非常简单的网站压测工具。它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能,最多可以模拟3万个并发连接去测试网站的负载能力。Webbench使用C语言编写, 代码实在太简洁,源码加起来不到600行。下载链接:http://home.tiscal原创 2016-10-27 21:42:01 · 332 阅读 · 0 评论 -
LPVOID类型
转载:作者:sunnylocus LPVOID是一个没有类型的指针,也就是说你可以将任意类型的指针赋值给LPVOID类型的变量(一般作为参数传递),然后在使用的时候再转换回来。 可以将其理解为long型的指针,指向void型。头文件windef.h中有typedef void far *LPVOID32-bit指针,指向一个未指定类型的数据例转载 2016-11-23 20:32:36 · 4363 阅读 · 0 评论 -
C++图谱
最新的培训机构培训图谱,可以用于自身知识体系图谱的构建。原创 2017-02-14 19:49:35 · 466 阅读 · 0 评论 -
类与类之间的关系
面向对象设计(OOD),避免不了要了解类与类之间的关系。https://www.cnblogs.com/h-hg/p/8784232.html 类间关系 这些关系由弱到强大致分为一下几种:依赖、关联、聚合、组合、继承。 先上代码:class Wheel {int size;public:Wheel(int sz) : size(sz) {};...转载 2019-02-16 11:05:03 · 297 阅读 · 0 评论