
c++
文章平均质量分 81
grefen
这个作者很懒,什么都没留下…
展开
-
c++中相似类型的一种设计方案
问题:假如有一类Object,该类Object会分几种不同类型,不同类型Object之间有相似属性,相似方法,也有不同属性,不同方法;如:class ObjectA { string name;原创 2011-09-02 00:07:46 · 959 阅读 · 0 评论 -
推荐一个跨平台内存分配器
http://www.cppblog.com/feixuwu/archive/2010/07/10/119980.aspx昨天一个同事一大早在群里推荐了一个google project上的开源内存分配器(http://code.google.com/p/google-perftools/),据说google的很多产品都用到了这个内存分配库,而且经他测试,我们的游戏客户端集成了这个最转载 2012-08-25 13:41:45 · 1032 阅读 · 0 评论 -
如何替换vc静态库里的全局内存分配器(libcmt.lib)
http://blog.vckbase.com/bastet/archive/2011/11/18/54707.html根据网上的引用,1、先从libcmt.lib里把对应的库删掉(得保存原来的)注:我这里是vc2010的。SET OUTCMT=newlib\libcmt.libLIB /IGNORE:4006,4221 /REMOVE:f:\dd\vctools\转载 2012-08-25 13:44:28 · 1744 阅读 · 0 评论 -
再说TCMalloc
http://code.google.com/p/gperftools/downloads/list http://blog.163.com/cp7618@yeah/blog/static/70234777201251345350339/Tcmalloc通过preload或者直接动态链接的方式对malloc等内存分配和释放函数进行截获并提供服务。Tcmalloc提供接口主要涵盖转载 2013-02-01 09:44:28 · 3468 阅读 · 0 评论 -
Windows下安装OpenSSL
解压OpenSSL, 在其目录下可以有个INSTALL.W32文件,这个文件就是在windows下的安装说明。用UltraEdit等工具打开它查看安装编译方法;原创 2014-04-26 20:28:15 · 855 阅读 · 0 评论 -
nedmalloc内存分配器配置介绍
主页见http://www.nedprod.com/programs/portable/nedmalloc/使用: 最新版本: v1.10,该版本没有vc工程,需要通过脚本构建vc的工程;方法:首先,安装python2.7;然后安装sconshttp://www.scons.org/将Python27的安装目录加到path当中;由于scons依赖Python原创 2012-08-25 14:24:54 · 10107 阅读 · 3 评论 -
对exe工程的单元测试如何测?
最近想了关于单元测试的问题,突然看见有人问title的问题,我的理解是:这个问题是伪命题!原因是:exe已经是最后的产品,应该属于集成测试的范围,不应该在说单元测试了,换句话说,对exe的测试是集成测试,不是单元测试了;所以,不必纠结于对exe进行单元测试;原创 2016-01-30 21:06:52 · 709 阅读 · 0 评论 -
cmake中使用c++11
CMakeLists.txt文件如下:"add_compile_options(-std=c++11)"是关键cmake_minimum_required (VERSION 2.6)project (hello)SET(CMAKE_C_COMPILER g++)add_compile_options(-std=c++11)set(SRC_LIST test.c)原创 2016-04-28 19:03:51 · 23963 阅读 · 2 评论 -
window apache+openssl双向认证配置
window apache+openssl双向认证配置参考资料:http://www.iteye.com/topic/1131378一 环境在window上和在linux上配置步骤差不多,但是在windows上有一点小改动,按照下面步骤在window上安装后无法重启httpd,并在error.log中发现这么一句话:SSLPassPhraseDialog b原创 2016-06-15 18:42:42 · 1869 阅读 · 1 评论 -
编译OSG及OsgOcean
一步步编译OsgOcean电脑:操作系统:win7编译器:vs2010显卡:NVIDIA GeForce GTX 550Ti准备工作一 安装cmake网络下载cmake,并安装;我安装的是cmake-2.8.9-win32-x86.exe二 下载OSG并编译osgOcean 1.0.1是用osg开发的,所以要安装OSG,官网上说可以用OSG2.8.2编译,所原创 2012-08-26 20:23:44 · 13650 阅读 · 7 评论 -
一句话读书之c++标准库扩展权威指南
c++tr1库在vs2005以前是没有提供的,但是vs2008以后,提供了tr1库的实现;基本上这些内容都包含在boost里面;所以使用vs2008以后版本,在没有使用boost情况下,了解tr1是有必要的,开发是很有用的;下面是该书中的一些简单内容摘要;了解一下即可,记住关键点,用的时候在详细参考msdn;学习技术过程中有一些关键书籍有必要精读,可以马上提升自己,有些略读了解一下,扩原创 2012-07-29 13:12:24 · 1367 阅读 · 0 评论 -
c++读写xml方法
//Include#import "MSXML6.dll" rename_namespace(_T("MSXML"))#include //ReadMSXML::IXMLDOMDocumentPtr pXMLDoc; HRESULT hr = pXMLDoc.CreateInstance(__uuidof(DOMDocument30));if (FAILED(hr原创 2011-12-29 18:06:17 · 6101 阅读 · 0 评论 -
C语言模块化编程中如何隐藏结构实现细节
经常看到有人为了隐藏结构体的实现细节煞费苦心,故本文简单介绍一下如何用简单有效的方法实现隐藏;C语言模块化编程典型的模块文件结构是这样的:// module.h#ifndef MODULE_INCLUDED#define MODULE_INCLUDEDstruct Module_T{ Module_T* link; void* data;};原创 2012-02-28 10:09:29 · 2808 阅读 · 2 评论 -
c++经典书籍推荐
1 、c++ primer(基础)2 、Efective c++(技巧及注意事项)3、More Efective c++(技巧及注意事项)4、Essential c++(基础)5、c++编程思想(1,2卷)(基础之后的深化) 6、c++ template(学习模板权威)7、深度探索c++对象模型(学习内部原理)8、Exception c++(技巧及注意事项)9、More Excetpt原创 2011-09-03 21:02:22 · 1326 阅读 · 0 评论 -
c++中不用循环计算求和等的方法
如果不用循环,递归等方法计算1-n的和的方法如下:通过模版在编译期可以计算出来,可以提高效率;#include "stdafx.h"templatestruct sum{ enum{ result = n + sum::result };};templatestruct sum{ enum{ result = 0};原创 2012-07-02 22:59:26 · 2135 阅读 · 0 评论 -
c++模板小技巧
实践过程中经常遇到这种情况:有多个同类型object,这些object会通过一个manager来管理,外部通过manager接口增加,删除,查询,更改object;如果整个工程中有很多不同类型的object,这些object分别由其对应的mananger来管理;这些不同类型的manager在增加,删除,查询,更改object的代码基本类似,差别只是类型不一样;可否通过技巧把这些代码复用,使工程中只原创 2011-12-31 13:51:48 · 898 阅读 · 0 评论 -
boost学习之bind
要点:1 是标准库中bind1st和bind2st的扩展,功能更强大2 他是一个创建函数对象的工具,而函数对象时标准库的算法需要的,所以bind提供了方便创建函数对象的功能3 使用bind的代码更简洁,易懂,较标准库的mem_fun,mem_fun_ref等好用4 bind的占位符_1,_2...对普通函数最多有9个,对于成员函数仅支持8个,第一个参数是类的this指针5 bi原创 2012-07-14 19:32:28 · 1030 阅读 · 0 评论 -
类成员函数的函数对象与RIIA结合在多返回点函数中的应用
开发中有时候遇到这种情况:类的某个函数返回时执行一些清理工作,或一些特殊的动作;但是方法中的返回点有很多个,如果在每个返回点都放置清理代码,势必不好的,所以需运用一些技巧;一个可以利用的技巧是C++的RIIA,具体就是编写一个模板类,在类析构的时候执行特定的方法;代码如下:templateclass CClassFun{ public: CClassFun(T* p, F原创 2012-03-12 21:10:30 · 664 阅读 · 0 评论 -
OpenSS与服务端进行双向认证的客户端代码
转载于http://blog.sina.com.cn/s/blog_4c451e0e010143v3.html一、概念:1.什么是 SSL? SSL 是一个缩写,全称是 Secure Sockets Layer。 它是支持在 Internet 上进行安全通信的标准,并且将数据密码术集成到了协议之中。 数据在离开您的计算机之前就已经被加密,然后只有到达它预定的目标后才被解密转载 2016-06-17 19:46:28 · 3582 阅读 · 0 评论