C++语言
love_hot_girl
这个作者很懒,什么都没留下…
展开
-
C++拷贝构造函数(深拷贝,浅拷贝)
C++拷贝构造函数(深拷贝,浅拷贝)对于普通类型的对象来说,它们之间的复制是很简单的,例如:int a=88;int b=a; 而类对象与普通对象不同,类对象内部结构一般较为复杂,存在各种成员变量。下面看一个类对象拷贝的简单例子。 #include iostream>using namespace std;class CExample {转载 2013-03-23 22:29:21 · 615 阅读 · 0 评论 -
printf打印64位整数。
http://www.cplusplus.com/reference/cstdio/printf/在32位cpu上:%llu 无符号64位%lld 有符号64位functionprintfint printf ( const char * format, ... );Print formatted data to stdo转载 2013-11-04 14:54:45 · 3358 阅读 · 0 评论 -
Bitlocker with Boot Camp?
Yes but you might not be able to upgrade to anything higher than Snow Leopard because of the extra partition Lion/ML sets up.IMO you would be better off using Parallels, VMWare or VirtualBox. Bu转载 2013-11-05 03:37:45 · 1325 阅读 · 0 评论 -
C++中成员初始化列表的使用
C++在类的构造函数中,可以两种方式初始化成员数据(data member)。1,在构造函数的实现中,初始类的成员数据。诸如:class point{private: int x,y;public: point(int m=0,int n=0) { x=m; y=n; } int GetX() { return x; }转载 2013-11-13 18:42:57 · 880 阅读 · 0 评论 -
C++0x中的委托构造函数(类似Java的构造条用构造)
http://www.cnblogs.com/ccdev/archive/2012/12/23/2830085.html方案三,我们称为“C++ 0x“方案,这是C++ 0x中的新特性,叫做“委托构造函数”,通过在构造函数的初始化列表(注意不是构造函数体内)中调用其它构造函数,来得到相应目的。感谢C++ 0x! 1 class CPerson 2 { 3 public转载 2013-11-28 22:52:54 · 871 阅读 · 0 评论 -
C++限定只能栈创建对象,只能堆创建对象。
目前还不能编写一个只能在栈上创建对象的类http://blog.csdn.net/mougaidong/article/details/6900425class OnlyHeap {public: OnlyHeap(); private: ~OnlyHeap();};class OnlyStack转载 2013-11-14 16:23:40 · 866 阅读 · 0 评论 -
const的位置以及区别(C++)
http://blog.csdn.net/jpexe/article/details/2157436一个比较经典的问题——问以下两种声明的区别:1) const char * p2) char * const p 这里的 const 关键字是用于修饰常量,书上说 const 将修饰离它最近的对象,所以,以上两种声明的意思分别应该是:1)转载 2013-11-30 00:49:19 · 808 阅读 · 0 评论 -
类成员函数指针(维基百科)
类成员函数指针[编辑]维基百科,自由的百科全书类成员函数指针(member function pointer),是C++语言的一类指针数据类型,用于存储一个指定类具有给定的形参列表与返回值类型的成员函数的访问信息。目录 [隐藏] 1 语法2 语义3 类成员函数指针的用途4 例子4.1 未知继承的成员函数指针例子5 参考文转载 2013-12-10 14:57:43 · 1123 阅读 · 0 评论 -
[C++] 右值引用:移动语义与完美转发(C++是一种扼杀生命的语言)
[C++] 右值引用:移动语义与完美转发 C++11 引入的新特性中,除了并发内存模型和相关设施,这些高帅富之外,最引人入胜且接地气的特性就要属『右值引用』了(rvalue reference)。加入右值引用的动机在于效率:减少不必要的资源拷贝。考虑下面的程序:12std::vectorstring> v;v.push_back("string"转载 2013-12-04 16:21:29 · 993 阅读 · 0 评论 -
通过cocos2d-x的CCGLProgram和CCShaderCache的实现来分析OpenGL
在OpenGL ES中,Shader是着色器,包括两种:顶点着色器(Vertex Shader)和片元着色器(Fragment Shader)。每个program对象有且仅有一个Vertex Shader对象和一个Fragment Shader对象连接到它。 Shader和Program编程步骤:1. 创建Shader 1)编写Vertex Sha转载 2013-12-12 11:48:15 · 1629 阅读 · 0 评论 -
TCMalloc:线程缓存的Malloc(特指用在游戏服务器上)
为何用在游戏服务器上好用?1、游戏服务器都是多线程。TC是Thread Cache的意思。2、游戏服务器逻辑语句,小块内存需求,极度频繁分配。3、负担得起,每个线程有2M限额的多余内存缓存释放的过程。为何游戏客户端用这个不好用?主要是这个库没有针对客户端的大块内存加入逻辑。如果逻辑修改为大块直接分配释放,小块内存缓存,性能能飞起来。TCMal转载 2013-10-23 09:44:04 · 1062 阅读 · 0 评论 -
C++0x新特性:decltype类型指示符与返回类型后置语法
http://blog.csdn.net/zwvista/article/details/5472096 C++0x新特性:decltype类型指示符与返回类型后置语法分类: C++2010-04-11 10:26 1805人阅读 评论(0) 收藏 举报c++lambdaclasspascalbasic编译器目录(?)[+]转载 2013-10-20 15:30:03 · 837 阅读 · 0 评论 -
【解惑】函数名与函数指针(普通C/C++函数、C++类*静态*函数名取不取址都一样,但C++类成员函数必须取址)
【解惑】函数名与函数指针 今天在学习linux下c程序设计时,看到函数指针时,在书上看到一个例子如下:1 int get_max(int i, int j, int k, int (*pt)(int,int))2 {3 int ret;4 5 ret = pt(i,j); 6 // ret = (*转载 2013-10-15 16:19:46 · 1015 阅读 · 0 评论 -
C++11新特性:自动类型推断和类型获取
C++11新特性:自动类型推断和类型获取分类: C++开发2012-09-02 14:13 6923人阅读 评论(32) 收藏 举报c++编译器编程iteratorintegervector目录(?)[+]声明:本文是在Alex Allain的文章http://www.cprogramming.com/c++11/c++11-auto-d转载 2013-10-16 01:34:34 · 671 阅读 · 0 评论 -
[置顶] C/C++左值性精髓(三)左值转换----从函数到指针的转换
[置顶] C/C++左值性精髓(三)左值转换----从函数到指针的转换分类: C/C++左值性精髓2011-12-03 22:46 2514人阅读 评论(14) 收藏 举报functionstructemailc C/C++左值性精髓(三)左值转换 3.从函数到指针的转换 将函数转换为指针的目的,与数组到指针的转换一样,都是为了将转载 2013-10-15 15:55:12 · 772 阅读 · 0 评论 -
左值和右值。(这个是翻译错误,l-value的l是location的意思,r-value的r是readable的意思,非left和right)
维基The "value of a variable" is given by the corresponding mapping in the environment.[citation needed] In languages with assignable variables it becomes necessary to distinguish between the r-va转载 2013-10-15 16:10:33 · 1575 阅读 · 1 评论 -
Rvalue引用声明:&&
http://msdn.microsoft.com/zh-cn/library/vstudio/dd293668.aspxRvalue引用声明:&&Visual Studio 2012其他版本此主题尚未评级 - 评价此主题保存对 rvalue 表达式的引用。转载 2013-10-16 02:42:06 · 796 阅读 · 0 评论 -
C++11新特性:Lambda函数(匿名函数)
C++11新特性:Lambda函数(匿名函数)分类: C++开发2012-09-02 15:39 12365人阅读 评论(24) 收藏 举报lambdac++string编译器functionpointers目录(?)[+]声明:本文参考了Alex Allain的文章http://www.cprogramming.com/c++11/c+转载 2013-10-16 01:35:07 · 1397 阅读 · 0 评论 -
探索C++0x: 3. 右值引用(rvalue reference)
探索C++0x: 3. 右值引用(rvalue reference)分类: 技术2010-06-06 21:47 2698人阅读 评论(7) 收藏 举报referencec++bufferoptimization编译器c转载请注明来源: http://blog.csdn.net/thesys/archive/2010/06/06/5651713.aspx简介转载 2013-10-16 02:45:56 · 913 阅读 · 0 评论 -
C++字符串处理盘点:Char*/String/StringBuilder/TextPool/Rope
C/C++字符串处理盘点:Char*/String/StringBuilder/TextPool/Rope分类: String C++2008-03-20 22:08 8225人阅读 评论(17) 收藏 举报stringbasicborland正则表达式多线程iterator目录(?)[+]C/C++字符串处理盘点:Char*/Strin转载 2013-10-16 13:29:20 · 1104 阅读 · 0 评论 -
本资料的资料来源以及 http://ideone.com/ - C++在线编译运行器
资料来源C++语言教程http://www.cplusplus.com/doc/tutorial/C++ STL 参考http://www.cplusplus.com/reference/在线C++11编译器http://ideone.com/翻译 2013-10-16 14:17:59 · 2106 阅读 · 0 评论 -
bool操作符需要显式转换。
#include "stdafx.h"class A{public:int a;operator bool(){return a - 7 == 0;}};int main(){A a;a.a = 7;//这个会自动 bool 运算if(a){printf("aaaa %d\n", a); //不会使转载 2013-12-12 19:26:41 · 767 阅读 · 0 评论 -
LNK2005 连接错误解决办法
http://www.cnblogs.com/carekee/articles/1750405.htmlLNK2005 连接错误解决办法nafxcwd.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new(unsigned int)" (??2@YAPAXI@Z) 已经在 LIBCMTD.lib(转载 2014-01-06 09:41:21 · 1118 阅读 · 0 评论 -
2013 Macbook Air Pro 装不了Windows7 ,键鼠失效卡死 ...(测试可用)
只要下载一个小小的工具~这是一个bat批处理文件,通过向boot.wim和install.wim中添加驱动程序的方法来完美解决安装Windows7时键盘鼠标动不了的问题。请另外寻找一台安装 Windows 7 系统的电脑运行,Windows xp 不支持。Mac暂时不支持。先在OS X系统里用BootCamp走第一、二步骤,然后启动我的工具,顺序执行1~5步骤。工具里有放QQ的!1转载 2014-01-19 00:57:20 · 4151 阅读 · 1 评论 -
typeid详解
http://www.cppblog.com/smagle/archive/2010/05/14/115286.aspx 在揭开typeid神秘面纱之前,我们先来了解一下RTTI(Run-Time Type Identification,运行时类型识别),它使程序能够获取由基指针或引用所指向的对象的实际派生类型,即允许“用指向基类的指针或引用来操作对象”的程序能够获取到“转载 2014-03-20 20:37:18 · 604 阅读 · 0 评论 -
C# bool true, false 操作符重载,用在 if, while等语句中
// Definitely true operator. Returns true if the operand is True, false // otherwise. public static bool operator true(DBBool x) { return x.value > 0; } // Definitely false转载 2014-03-22 22:35:44 · 2902 阅读 · 0 评论 -
C语言 ## __VA_ARGS__ 宏
http://www.cnblogs.com/alexshi/archive/2012/03/09/2388453.html在GNU C中,宏可以接受可变数目的参数,就象函数一样,例如: 12#define pr_debug(fmt,arg...) \ printk(KERN_DEBUG fmt转载 2014-03-25 15:53:25 · 701 阅读 · 0 评论 -
C/C++宏的奇技淫巧
http://www.cppblog.com/misakamm/archive/2012/01/16/164258.html来源:http://blog.misakamm.org/p/209宏的主要作用就是简化代码编写,简化一些需要重复编码的地方,以得到看起来更优雅的代码。但宏要用得好并不容易,用的不好很容易引发灾难性的后果。本文会介绍宏比较偏门但又很实用的技巧。首先就是最转载 2014-03-25 15:18:55 · 1034 阅读 · 0 评论 -
VC 2012 visualstudio的项目属性表 .props文件
http://www.haogongju.net/art/2390335最近发现一个有趣的东西:visual studio的项目属性表我下载了cocos2d-x-3.0alpha1,然后发现HelloLua项目配置里没有配include搜索目录和依赖库以及一个Marco $(EngineRoot),但是编译的时候居然不报错。经查找发现在cocos/2d目转载 2014-03-26 11:00:47 · 1860 阅读 · 0 评论 -
c++11的using关键字。
http://en.cppreference.com/w/cpp/keyword/usingUsageusing-directives for namespaces and using-declarations for namespace membersusing-declarations for class memberstype alias and alia转载 2014-05-22 13:03:41 · 1397 阅读 · 0 评论 -
怎样cygwin上升级GCC
1. 下载在GCC网站上(http://gcc.gnu.org/)或者通过网上搜索可以查找到下载资源。目前GCC的版本为 3.4.4。升级为:4.0.0, 下载资源gcc-4.0.0.tar.gz.2. 解压缩 把gcc-4.0.0.tar.gz.放在/home/user/下, 解压:(以下的“$”表示命令行提示符):$ tar xzvf g转载 2014-06-26 23:23:55 · 2422 阅读 · 0 评论 -
cocos2d-x在IOS7下面文字显示异常的解决办法
http://blog.csdn.net/butwang/article/details/13003117 由于xcode升级到了5.0,之前在cocos2d-x2.1.3下面的项目,出现了莫名其名的错误,主要是文字显示异常,明明有文字的,但就是不显示,后来搜了下,发现是需要修改cocos2d-x底层的相关设置,如果你在运行时出现文字显示异常,并且有如下提示:转载 2014-12-20 11:46:18 · 932 阅读 · 0 评论 -
Visual Studio 2013 Preview对C++11的支持
http://www.cnblogs.com/codemood/p/3162512.html为期3天的微软Build 2013大会结束了,作为微软一年一度的开发者大会,微软也做足了功夫:很多产品(包括Windows 8.1和Visual Studio 2013 Preview)发布,channel9全程直播,可以到http://channel9.msdn.com/Events/Bu转载 2014-03-20 19:21:07 · 883 阅读 · 0 评论 -
error C2678 binary '<' : no operator found for map<std::string, shared_ptr<Foo>>
How can I resolve the following compiler error:xstddef(180): error C2678: binary '<' : no operator found which takes a left-hand operand of type 'const std::string' (or there is no acceptable conver转载 2014-03-20 14:07:28 · 1745 阅读 · 0 评论 -
shared_ptr四宗罪
在基于C++的大型系统的设计实现中,由于缺乏语言级别的GC支持,资源生存周期往往是一个棘手的问题。系统地解决这个问题的方法无非两种:使用GC库使用引用计数严格地说,引用计数其实也是一种最朴素的GC。相对于现代的GC技术,引用计数的实现简单,但相应地,它也存在着循环引用和线程同步开销等问题。关于这二者孰优孰劣,已经有过很多讨论,在此就不搅这股混水了。我一直也没有使用过C++的GC库,转载 2014-02-18 19:23:22 · 911 阅读 · 0 评论 -
C++虚基类详解
http://www.weixueyuan.net/view/5870.html在上一节中,有两个身份证号显然是不合理的。为此,可以把class Person这个共同基类设置为虚基类,这样,从不同路径继承来的同名数据成员在内存中就只有一个拷贝,同名函数也只有一种映射。虚基类定义方式虚基类(virtual base class)定义方式如下: class 派生类名:转载 2014-03-12 18:46:25 · 1229 阅读 · 0 评论 -
推荐一个跨平台内存分配器tcmalloc用在3D游戏上
推荐一个跨平台内存分配器 昨天一个同事一大早在群里推荐了一个google project上的开源内存分配器(http://code.google.com/p/google-perftools/),据说google的很多产品都用到了这个内存分配库,而且经他测试,我们的游戏客户端集成了这个最新内存分配器后,FPS足足提高了将近10帧左右,这可是个了不起的提升,要知道3D组的兄弟忙了几周也没见这么转载 2013-10-23 09:48:04 · 1509 阅读 · 0 评论 -
C++多重继承与派生类成员标识
C++多重继承与派生类成员标识上一节下一节返回目录编辑/纠错/意见加载中...更新:2012-12-30分享到0 C++多重继承的概念由多个基类共同派生出派生类的继承结构称为多重继承或多继承(multiple-inheritance)。多重继承是从实际的需要产生的。例如:从大学在册人员产生学生和教职工。再从学生派生研究生。如果考虑转载 2014-03-12 18:45:20 · 1190 阅读 · 0 评论 -
【原】C++ 11右值引用 std::move的作用
http://www.cnblogs.com/hujian/archive/2012/02/13/2348621.html【原】C++ 11右值引用 C++ 11中引入的一个非常重要的概念就是右值引用。理解右值引用是学习“移动语义”(move semantics)的基础。而要理解右值引用,就必须先区分左值与右值。 对左值和右值的一转载 2014-03-13 08:42:11 · 5566 阅读 · 3 评论 -
【原】C++ 11完美转发
http://www.cnblogs.com/hujian/archive/2012/02/17/2355207.html【原】C++ 11完美转发 C++ 11中引入的一个非常重要也是比较难于理解的新特性就是完美转发(Perfect Forwarding)。完美转发中有两个关键词:“转发”和“完美”。 我们先来看第一个关键词“转发”,那么在C++中,“转载 2014-03-13 08:48:35 · 961 阅读 · 0 评论