自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(3)
  • 资源 (4)
  • 收藏
  • 关注

原创 编写智能指针实现对象托管(二)

上部分介绍了咱对编写智能指针实现对象托管的一些设想,接下来就是使用代码来实现它了。

2016-12-03 08:36:38 525

原创 编写智能指针实现对象托管(一)

在C++代码中,经常需要包含标准库头文件memory,使用std::shared_ptr和std::weak_ptr模板,来实现对象的自动释放。然而在处理循环引用时,两者需要结合使用起来使用,仍然颇为费神。特别是在编写树或图时,一不小心就内存泄漏。在投入.NET怀抱前,我决定尝试在C++中编写智能指针来实现对象托管 。

2016-11-29 19:24:46 999

原创 C++/CLR 使用VS2015预览版编写Windows窗体应用程序(VS2012、VS2013类似)

简单介绍了Visual Studio在C++/CLR项目下创建Windows窗体应用程序的方法,希望能对初学者有所帮助。

2015-03-14 02:25:15 8980

Nessus离线升级包all-2.0.tar.gz【2019-04-23】

2019年04月23日下载的Nessus离线升级包,用于在局域网无法连接互联网的条件下更新。

2019-04-25

高速对象池(内存池)类模板代码(C++)

包含定义代码和测试代码,代码不复杂,有注释,池对象存取时间复杂度为常数级,多线程测试速度可达千万次/秒。 使用方法如下: 1.定义池,例如: FastPool<std::string> pool; 2.往池添加对象,例如: pool.Add("abc");//要注意这里传入的是构造对象的参数 3.取出一个对象以使用,例如: std::string* p = pool.Pop(); 这一步可以跟上一步结合起来: std::string* p = pool.AddAndPop("123");//这时候p就指向"123"这个刚加入池的std::string对象 4.存回对象以重用,例如: pool.Release(p); 5.还有的时候需要删除池中的对象,例如: pool.Delete(p);//只删除一个对象 pool.DeleteNotUsed();//删除池中未使用的对象 pool.DeleteAll();//删除池中所有对象 上面的示例只是模板参数为std::string 时的用法。还有一些函数未列出。希望代码能给大家带来启发。 重新检查了一次,发现模板代码中区分类和基本数据类型的代码用到了另外自定义的库。需要做如下修改: #include<type_traits> //先定义一个模板用以区分类和基本数据类型的行为 template<class TT, bool val>struct ChangeClass {typedef typename TT Type;}; template<class TT>struct ChangeClass<TT,false> {typedef typename std::vector<void*> Type;}; 然后代码中的 typedef typename LK::Templates::UseT<LK::Templates::IsClassOrUnion<T>::value, std::vector<void>, T>::type TP; if (LK::Templates::IsClassOrUnion<T>::value) 改为: typedef typename ChangeClass<T, std::is_class<T>::value>::Type TP;//防止非类调用析构函数导致的错误 if (std::is_class<T>::value) 最后,欢迎喜欢编程的伙伴来qq群244953928探讨O(∩_∩)O

2019-04-21

一个内存分配器,C++代码

templateBlockMemory; 类模板用于进行size指定块大小的内存分配。 比如BlockMemory bm; 则bm专门用来分配内存大小为sizeof(void*)字节的内存。 结合dlmalloc使用时,可以节省大量内存空间 详情请加QQ群: C++初学群:235916384 C++新手群:244953928 C++进阶群:145394317 C++/CLI群:271463461 C++11群:320580899

2014-07-31

采用托管c++编写的一个网络即时音频传输工具

  基于.NET3.5和DirectSound编写,可实现局域网内音频的高质量、低延时传输。   分服务器端和客户端。使用时须先让服务器端监听,再让客户端连接。连接后,客户端将从默认录音设备采集到的音频数据发送,而服务器端将自动播放。可同时开启多个客户端和服务器端。   附有源代码。

2012-02-15

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除