随笔分类 - c++
摘要://i_vptrstruct i_vptr { virtual void test() = 0;};//vptr.h#include "i_vptr.h"#include class vptr:public i_vptr{public: void test();};//vptr.c...
阅读全文
摘要:前言C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函...
阅读全文
摘要://client#include #include #pragma comment(lib, "WS2_32") // 链接到WS2_32.libusing namespace std;int main(){ SOCKET so; WSADATA ws; if (WSASta...
阅读全文
摘要://A.h#include using namespace std;namespace A{ class NA { public: void fun1(); };}//A.cpp#include "A.h"namespace A{ void NA::fun...
阅读全文
摘要:/*auto_ptr:会发生语义转移,不支持应用计数scoped_ptr:不支持复制,只有自己可以管理指针scoped_array:支持数组shared_ptr:最好的智能指针,支持引用计数,容器操作等,复制指针时引用计数加一,当复制的对象析构时引用计数减1,当引用计数为0是析构对象*/#inclu...
阅读全文
摘要:“一切皆Socket!”话虽些许夸张,但是事实也是,现在的网络编程几乎都是用的socket。——有感于实际编程和开源项目研究。我们深谙信息交流的价值,那网络中进程之间如何通信,如我们每天打开浏览器浏览网页时,浏览器的进程怎么与web服务器通信的?当你用QQ聊天时,QQ进程怎么与服务器或你好友所在的Q...
阅读全文
摘要:摘 要 随着人们对应用程序的要求越来越高,单进程应用在许多场合已不能满足人们的要求。编写多进程/多线程程序成为现代程序设计的一个重要特点,在多进程程序设计中,进程间的通信是不可避免的。Microsoft Win32 API提供了多种进程间通信的方法,全面地阐述了这些方法的特点,并加以比较和分析,希望...
阅读全文
摘要:1.什么是继承A继承B,说明A是B的一种,并且B的所有行为对A都有意义eg:A=WOMAN B=HUMANA=鸵鸟 B=鸟 (不行),因为鸟会飞,但是鸵鸟不会。2.什么是组合若在逻辑上A是B的“一部分”(a part of),则不允许B从A派生,而是要用A和其它东西组合出B。例如眼(Eye)、鼻(N...
阅读全文
摘要:一、 成员初始化列表的位置。成员初始化列表的位置位于构造函数的函数体和参数表之间。构造函数初始化列表以一个冒号开始,接着是以逗号分隔的数据成员列表,每个数据成员后面跟一个放在括号中的初始化式,初始化式可以是表达式、派生类构造函数的形参还有其余常量。通过成员初始化表,类数据成员可以被显式初始化。成...
阅读全文
摘要:deque容器为一个给定类型的元素进行线性处理,像向量一样,它能够快速地随机访问任一个元素,并且能够高效地插入和删除容器的尾部元素。但它又与vector不同,deque支持高效插入和删除容器的头部元素,因此也叫做双端队列。deque类常用的函数如下。(1)构造函数deque():创建一个空deque...
阅读全文
摘要:看了两天,这三者之间的关系好像是这样的,因为GS和net在同一台机器上,所以用共享内存通信,毕竟共享内存通信是最快的进程间通信的方式,而NGP是属于客户端的,Net是属于服务器的,他与Net进程是基于LibEvent通信的,Libevent里面创建的是基于Tcp创建的socket,也就是靠他进行网络...
阅读全文
摘要:class B;struct A{ B* ptr;};class B{public:};int main(){ return 0;}A中定义了B的指针,所以要声明class B,在定义处于不完整类型之前,只能使用类的指针或者引用,在定义B之前是不能调用B的成员的。好像还有一些细节。
阅读全文
摘要:暂时用了c++builder xe6之后才VS 2012多么好,builder安装文件5G多,见过最大的安装文件,而且要求c盘要求有25G剩余空间,还好的我的c盘100G,等装好之后操作真是lj,各种不方便,经理说c++ builder相比MFC一个是汽车一个是自行车,我是真没有感觉到哪儿好。或许有...
阅读全文
摘要:struct shareDataEx : shareData{ int index; int total_size;};typedef managed_shared_memory::segment_manager segment_manager_t; //段管理器type...
阅读全文
摘要:#include #include #include #include using namespace std;int main(){ //boost::interprocess::shared_memory_object类是按照单个字节的方式读写共享内存,用起来不方便 boost::i...
阅读全文
摘要:#include #include using namespace std;int main(){ int pid = GetCurrentProcessId(); auto path = Plug::GetCurrentPath();//返回std::wstring path +...
阅读全文
摘要:#include using namespace std;int main(){#if 1 int num = 12345; char str[25];//不要写成char*,因为没有分配空间 itoa(num, str, 10);//10进制字符串 printf("num ...
阅读全文

浙公网安备 33010602011771号