![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++基础
文章平均质量分 69
linking530
这个作者很懒,什么都没留下…
展开
-
openssl windows 编译
Microsoft Windows XP [版本 5.1.2600](C) 版权所有 1985-2001 Microsoft Corp.C:\Documents and Settings\Administrator>set pathPath=f:\perl\site\bin;f:\perl\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\Sy转载 2014-06-10 11:44:12 · 1088 阅读 · 0 评论 -
GUID的生成,用vs2008
GUID的生成,用vs2008转载 2014-06-13 15:48:31 · 1817 阅读 · 0 评论 -
如何修改远程桌面连接端口
首先打开注册表:运行-regedit:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Terminal Server\Wds\Repwd\Tds\Tcp键项的 PortNumber的数值数据就是使用的端口,默认值为3389(十进制),可以修改成其他端口如3111,以便提高安全性能。HKEY_LOCAL_MACHINE\SYST转载 2014-06-20 11:02:39 · 683 阅读 · 0 评论 -
c++中两个类相互包含引用的相关问题
在构造自己的类时,可能会遇到两个类相互引用的问题。例如:class A{ int i; B b;}; class B{ int i; A a;};在这种情况下,这样就会出现一个死循环a.b.a.b.a.b....,一般来说,应避免这种情况。如果确实需要的话,一般来说,至少有一方需要定义成指针。例如:class A{转载 2014-09-17 10:25:03 · 492 阅读 · 0 评论 -
std list/vector sort 排序就这么简单
网上江湖郎中和蒙古大夫很多,因此,此类帖子也很多。关于排序,我还真没研究过,看了江湖郎中和蒙古大夫的帖子,搞了半天不行,所以,自己研究了一下,如下:三种方式都可以,如重写容器中是对象时,用容器中是对象指针时,用()和比较函数排序都可以。list用成员方法sortvector用sort函数 [cpp] view plaincopyclass TestI转载 2014-10-09 10:11:36 · 699 阅读 · 0 评论 -
std::vector的排序
人比较懒。。。直接上代码: 1 #include "stdafx.h" 2 #include Windows.h> 3 #include vector> 4 #include algorithm> 5 #include iostream> 6 #include functional> 7 8 9 class xTestElement10 {转载 2014-10-09 10:30:04 · 879 阅读 · 0 评论 -
vector容器与iterator迭代器
vector容器vector是同一种类型的对象的集合,每个对象都有一个对应的整数索引值。和string对象一样,标准库负责管理存储元素的相关内存。我们把vector称为容器,是因为它可以包含其他对象。一个容器中的所有对象都必须是同一种类型的。使用vector之前,必须包含相应的头文件。#include using std::vector;vector是一个类模板(class转载 2014-10-09 11:40:41 · 540 阅读 · 0 评论 -
Skynet 设计综述
经过一个月, 我基本完成了 skynet 的 C 版本的编写。中间又反复重构了几个模块,精简下来的代码并不多:只有六千余行 C 代码,以及一千多 Lua 代码。虽然部分代码写的比较匆促,但我觉得还是基本符合我的质量要求的。Bug 虽不可避免,但这样小篇幅的项目,应该足够清晰方便修正了吧。花在 Github 上的这个开源项目上的实际开发实现远小于一个月。我的大部分时间花了和过去大半年的 Erla转载 2014-11-12 15:43:34 · 490 阅读 · 0 评论 -
C++多态技术
多态(polymorphism)一词最初来源于希腊语polumorphos,含义是具有多种形式或形态的情形。在程序设计领域,一个广泛认可的定义是“一种将不同的非凡行为和单个泛化记号相关联的能力”。和纯粹的面向对象程序设计语言不同,C++中的多态有着更广泛的含义。除了常见的通过类继续和虚函数机制生效于运行期的动态多态(dynamic polymorphism)外,模板也答应将不同的非凡行为和单个泛化转载 2014-11-14 14:57:40 · 378 阅读 · 0 评论 -
从std::string转换为LPCWSTR
LPCWSTR stringToLPCWSTR(std::string orig){size_t origsize = orig.length() + 1; const size_t newsize = 100; size_t convertedChars = 0;wchar_t *wcstring = (wchar_t *)malloc(sizeof(wchar_t)*(o转载 2014-05-29 17:35:26 · 2245 阅读 · 0 评论 -
libcurl教程
转载自:http://jishi.cntv.cn/xingyuaidejueze/classpage/video/20120212/100600.shtml 原文地址:http://curl.haxx.se/libcurl/c/libcurl-tutorial.html 译者:JGood(http://blog.csdn.net/JGood ) 译者注:这转载 2014-06-09 17:51:45 · 410 阅读 · 0 评论 -
用iostat对linux硬盘IO性能进行检测
近期公司安装了几台DELL PE2650和2850的服务器,统一安装的是RHLE5.132位系统,而服务器的SCSI硬盘都统一做了raid1。公司老总要求对硬盘IO作统一检测报告,在Linux下找了许多工具,发现最实用的还是iostat,这个需要先安装sysstat ,即yum -y install sysstat ;公司内部的yum服务器搭建这个不是本文的重点,这里不作详细叙述。# iost转载 2014-06-30 19:54:03 · 596 阅读 · 0 评论 -
VC2008配置设置(转)
解决方案与项目:从VC6之后VC系列就使用解决方案(Solution)来替代原来的工作空间,用于组织和管理多个相关的项目(Project)。文章首先演示一个虚拟的解决方案和我们期望得到的目录结构,然后使用VC2008的项目设置功能来一步一步达到我们的需求。虚拟解决方案:该虚拟解决方案名为GMA,包含一个动态链接库项目ChocolateMilk和一个应用程序项目PureMilk,需要转载 2014-04-16 16:15:37 · 548 阅读 · 0 评论 -
vs2008编译zlib库32位及64位
vs2008编译zlib库32位及64位 这里以1.2.5为例,当前最新的版本1.2.7,方法应该都是通用的。32位版本 1、下载并解压缩zlib-1.2.5.tar.gz官网http://www.zlib.org(最近打不开),所以我上传了一份在资源,下载地址:http://download.csdn.net/detail/shellching/4689279转载 2014-06-10 15:19:54 · 461 阅读 · 0 评论 -
COM笔记-QueryInterface函数
客户同组件的交互都是通过一个接口完成的。在客户查询组件的其他接口时,也是通过接口完成的。这个接口就是IUnknown。它在UNKNWN.H头文件定义 :如下 InterfaceIUnknown { virtual HRESULT __stdcall QueryInterface(REFIID riid, void ** p转载 2014-06-10 17:46:10 · 411 阅读 · 0 评论 -
libcurl 多线程使用注意事项
(1), 超时(timeout)libcurl 是 一个很不错的库,支持http,ftp等很多的协议。使用库最大的心得就是,不仔细看文档,仅仅看着例子就写程序,是一件危险的事情。我的程序崩溃了,我 怀疑是自己代码写的问题,后来发现是库没用对。不仔细看文档(有时候文档本身也比较差劲,这时除了看仔细外,还要多动脑子,考虑它是怎么实现的),后果很 严重。不加思索的使用别人的库或者代码,有时候很惬意,转载 2014-06-09 17:44:25 · 668 阅读 · 0 评论 -
CURL详解
curl_setop()函数中的参数中文说明curl_setop()函数中的参数中文说明curl_setopt()函数将为一个CURL会话设置选项。option参数是你想要的设置,value是这个选项给定的值。下列选项的值将被作为长整形使用(在option参数中指定): *CURLOPT_INFILESIZE:当你上传一个文件到远程站点,这个选项告诉PHP你上传文件的大小。*CUR转载 2014-06-09 17:39:24 · 804 阅读 · 0 评论 -
libcurl 接口调用方式
libcurl提供了一组C语言API函数直接调用。首先需要提到的两个函数就是curl_global_init()和 curl_global_cleanup()。libcurl要用到一系列的全局常量,curl_global_init()函数就是初始化这些变量,并分配一些全局资源;curl_global_cleanup()则负责释放这些资源。因此一般情况下,在调用libcurl函数之前,先用 curl转载 2014-06-09 17:36:03 · 611 阅读 · 0 评论 -
libcurl教程(转)
原文地址:http://curl.haxx.se/libcurl/c/libcurl-tutorial.html 译者:JGood(http://blog.csdn.net/JGood ) 译者注:这是一篇介绍如何使用libcurl的入门教程。文档不是逐字逐句按原文翻译,而是根据笔者对libcurl的理解,参考原文写成。文中用到的一些例子,可能不是出自原文,而是笔者在学习过程中转载 2014-06-09 15:10:56 · 576 阅读 · 0 评论 -
C++类构造函数初始化列表,子类向父类传参数
C++类构造函数初始化列表构造函数初始化列表以一个冒号开始,接着是以逗号分隔的数据成员列表,每个数据成员后面跟一个放在括号中的初始化式。例如:class CExample {public: int a; float b; //构造函数初始化列表 CExample(): a(0),b(8.8) {} //构造函数转载 2014-10-30 11:59:06 · 10316 阅读 · 0 评论 -
COM技术之浏览器定制
浏览器控件是个典型的Active控件,提供了大量的接口及自动化对象,可以灵活的加以控制,需要的时候,可以通过这些接口控制浏览器的行为,或提供相应的出接口定制浏览器。一、概述浏览器对象CLSID:CLSID_WebBrowser提供的主要接口IWebBrowser2 浏览器的接口当文档建立后,可以得到相应的文档接口,文档中各标记元素的接口。在DHTML中,大量转载 2014-10-14 15:31:33 · 479 阅读 · 0 评论 -
C++中嵌入ie浏览器总结
C++中嵌入ie浏览器总结(1) - ie边框 及上下文菜单 最近项目中用html 来做界面,也就折腾了一下在wxwidget中嵌入浏览器的若干细节工作,mfc也基本是类似的,由于wxwidget中已经做了一个封装wxie,但是开发过程中也遇到了不少问题,在此做一下总结: ie边框 及上下文菜单 普通嵌入到程序里面的浏览器页面都会有一个灰色的边框,这样放到程序里面就转载 2014-10-14 15:51:19 · 1749 阅读 · 0 评论 -
关于std::nothrow
http://hi.baidu.com/ilbx/blog/item/30a2c9f550299d2dbd31090f.htmlnothrow new与普通new2009-03-01 16:57标准的new头文件可以定义普通的new,同时,它也可以定义一个变体new操作符,这个操作符叫做nothrownew。普通的new:过去和现在 普通new一个异常的类型std::b转载 2015-02-03 10:45:12 · 800 阅读 · 0 评论 -
讨论nullptr和NULL
最近玩了两天的c++11,其中有一个是新的关键字nullptr。 这里讨论下nullptr的存在价值,应用场景以及不支持c++11的时候如何模拟nullptr。1、为什要有nullptr 我们给一个指针赋初值的时候一般这么写 FILE* fp = NULL; 这里有个NULL的定义,一般情况下它是这么定义的: [cpp] vie转载 2015-02-03 11:18:59 · 417 阅读 · 0 评论 -
pthread_getspecific和pthread_setspecific使用
pthread_getpecific和pthread_setspecific实现同一个线程中不同函数间共享数据的一种很好的方式。 #more test.c/* * ===================================================================================== *转载 2015-02-28 11:43:45 · 498 阅读 · 0 评论 -
线程与私有数据
http://www.groad.net/bbs/thread-2179-1-1.html在多线程程序中,经常要用全局变量来实现多个函数间的数据共享。由于数据空间是共享的,因此全局变量也为所有进程共有。但有时应用程序设计中必要提供线程私有的全局变量,这个变量仅在线程中有效,但却可以跨过多个函数访问。比如在程序里可能需要每个线程维护一个链表,而会使用相同的函数来操作这个链表,最简单的转载 2015-02-28 18:14:58 · 367 阅读 · 0 评论 -
Linux程序崩溃(segment fault)原因的调试
主要有两种方法:一是用gdb,二是用valgrind 1.先用 ulimit -c unlimited 设置环境 2.重新运行程序,等待 segment fault,应该会生成 core 文件 3.gdb core*以下是gdb ./UserStatsControl core.12345的输出#0 0x00000000 in ?? () (gdb) bt转载 2015-04-30 14:52:34 · 2931 阅读 · 0 评论 -
Linux core dump调试
在Linux系统中,当程序运行的过程中异常终止或者崩溃时,OS会将程序当时的内存状态记录下来保存到一个文件中,这就是core dump。当程序崩溃时会在指定目录下生成一个core文件,core文件仅仅是一个内存映象,同时加上了崩溃程序的调试信息,用来调试定位问题,借助core dump来诊断和调试程序。1.Ubuntu系统测试(1) 编写产生异常终止的程序#include in转载 2015-04-30 15:19:59 · 547 阅读 · 0 评论 -
behaviac是腾讯对行为树(Behavior Tree)的一个实现方案。该方案包括编辑器(Designer)和运行时库(Runtime):编辑器用来编辑和调试行为树,运行时库用来解释和执行编辑器生
Linux下c/c++开发之程序崩溃(Segment fault)时内核转储文件(core dump)生成设置方法 Linux下c/c++开发程序崩溃(Segment fault)通常都是指针错误引起的.以下是我们详细的对Linux core dump的调试技术进行的介绍: Linux core dump简介有的程... Linux下c/c++开发之程序崩溃(Segment fault)时转载 2015-04-30 15:08:51 · 4766 阅读 · 0 评论 -
cocos2dx使用lua和protobuf
http://blog.csdn.net/weyson/article/details/17024325为了使游戏开发更加方便快捷,我继续了protobuf在lua下的尝试。socket使用的是cocos2dx集成的websocket。先说下环境:cocos2d-x-2.2.1 + protobuf 2.5.0 + protoc-gen-lua + Python 2.7.5转载 2015-05-25 17:47:06 · 519 阅读 · 0 评论 -
将cocos2dx项目从VS移植到Eclipse - CoolJie
引言: 我们使用cocos2d-x引擎制作了一款飞行射击游戏,其中创新性地融入了手势识别功能。但是 我们在移植过程中遇到了很多的问题,同时也发现网上的资料少而不全。所以在项目行将结束的时候,我们特地写了这篇文章来完整记录我们整个移植的过程,纪念我们项目的成功完成,更以此来表达对帮助过我们的人的感谢。移植过程中我们在网上得到了很多帮助,更要感谢黄杨学长在最后时刻帮助我们突破难关!0、开发转载 2014-12-05 11:50:32 · 634 阅读 · 0 评论 -
如何在VC中嵌入IE
一、需要在你的程序中嵌入IE浏览器的窗口。有两种实现方法,其一,添加CHtmlView的视类;其二,添加IE浏览器的ActiveX控件。其实不管用什么方法,除了函数名称稍有区别外,它们最终都调用了微软的IWebBrowser2的接口。 二、方法和步骤: 1. 建立一个对话窗形式的MFC应用程序,注意在导航的第2页上,一定要选择ActiveX Controls。这也是默认的选择。 2转载 2014-10-14 17:58:40 · 1415 阅读 · 0 评论 -
C++11 并发指南二(std::thread 详解)
引言C++11 自2011年发布以来已经快两年了,之前一直没怎么关注,直到最近几个月才看了一些 C++11 的新特性,今后几篇博客我都会写一些关于 C++11 的特性,算是记录一下自己学到的东西吧,和大家共勉。相信 Linux 程序员都用过 Pthread, 但有了 C++11 的 std::thread 以后,你可以在语言层面编写多线程程序了,直接的好处就是多线程程序的可移植性得到了很大转载 2014-11-18 11:15:12 · 1540 阅读 · 0 评论 -
MFC实现不规则形状窗口(CF登陆窗口)
1,目标实现形状不规则的窗口,例如CF登陆窗口。可以看到,窗口不是死板的矩形,而是带突出带凹陷的不规则形状。(PS:谢霆锋代言CF,还真是霸气测漏啊……)2,原理查询CWnd接口,有一个叫SetWindowRgn的方法,可以设置窗口显示的区域。函数原型 int SetWindowRgn(HRGN hRgn,BOOL bRedraw);hRgn代表一个区域,这个H转载 2014-10-15 11:24:10 · 634 阅读 · 0 评论 -
fatal error LNK1000: Internal error during IncrBuildImage
Win7安vc2008编译报LINK : fatal error LNK1000: Internal error during IncrBuildImage 收藏安装了VS2008+sp1后出现链接错误:>Copyright (C) Microsoft Corporation. All rights reserved.1>LINK : fatal error LNK1000: I转载 2014-10-16 10:15:48 · 554 阅读 · 0 评论 -
C++与Flash的交互
研究Flash嵌入游戏中的可行性.......渲染问题已解决事件响应已解决下面是C++与Flash AS的交互, 以MFC为例:1. 新建一个MFC Dialog程序2. 添加一个Flash控件 3. 把Flash控件添加一个变量 4. 在OnInitDialog()中添加载.swf文件[cpp] view plaincopy转载 2014-10-14 18:53:35 · 708 阅读 · 0 评论 -
C++11 并发指南一(C++11 多线程初探)
引言C++11 自2011年发布以来已经快两年了,之前一直没怎么关注,直到最近几个月才看了一些 C++11 的新特性,今后几篇博客我都会写一些关于 C++11 的特性,算是记录一下自己学到的东西吧,和大家共勉。相信 Linux 程序员都用过 Pthread, 但有了 C++11 的 std::thread 以后,你可以在语言层面编写多线程程序了,直接的好处就是多线程程序的可移植性得到了很大转载 2014-11-18 11:16:39 · 480 阅读 · 0 评论 -
C++标准库__std::deque(双端队列),std::queue(队列),std::stack(栈)__由stl的定义我们就可以看出 queue和stack都是基于deque实现的和常用接口
std::deque(双端队列):定义:template class T, class Allocator = std::allocatorT>> class deque;实现接口:http://en.cppreference.com/w/cpp/container/deque接口:max_size转载 2014-10-31 18:30:15 · 1688 阅读 · 0 评论 -
缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int---->解决方法
写了一个对应让其出的错误(其实也挺不容易的喔 )错误如下:1>d:\work\win32project\testeachotherclude\testeachotherclude\test2.h(9): error C2143: 语法错误 : 缺少“;”(在“*”的前面)1>d:\work\win32project\testeachotherclude\testeachotherclu转载 2017-10-25 11:18:19 · 24132 阅读 · 4 评论 -
关于do while(false)
关于do while(false) 在m-star中看到了好多函数中有do while(false)这样的写法,不解。现在终于明白了它的好处:经常会遇到这样的情况,一大段代码,中间遇到某种情况,比如someObj == null,需要跳出这段代码,但是又不在循转载 2011-07-06 17:56:22 · 1862 阅读 · 2 评论