C++
文章平均质量分 64
职业炒股
曾经的左撇子双子座IT男。
展开
-
继承和动态内存分配(C++ Primer Plus 第十三章)
第一种情况:派生类中不使用new原创 2014-05-16 15:19:22 · 849 阅读 · 0 评论 -
C++11智能指针的选择使用
建立所有权概念,对于特定的对象,只有一个zhi'neng指针可以拥有它,原创 2014-06-07 17:23:13 · 1433 阅读 · 0 评论 -
static_cast, dynamic_cast, const_cast探讨
首先回顾一下C++类型转换:C++类型转换分为:隐式类型转换和显式类型转换第1部分. 隐式类型转换又称为“标准转换”,包括以下几种情况:1) 算术转换(Arithmetic conversion) : 在混合类型的算术表达式中, 最宽的数据类型成为目标转换类型。 int ival = 3;double dval = 3.14159;转载 2014-06-12 16:00:13 · 720 阅读 · 0 评论 -
C++函数重载易错点
1.函数重载跟返回类类型无关。如果定义一下两个函数:int Func();voide Func();原创 2014-05-26 10:42:05 · 809 阅读 · 0 评论 -
C++11的语法新特性
从C++出来到现在已经13年了。Bjarne Stroustrup(C++的创造者)最近评价C++11:”感觉像个新的语言“。事实上,C++11核心已经发生了很重大的变化:1. 支持Lambda表达式( lambda expressions)2. 对象自动类型推导(automatic type deduction of objects)3. 统一初始化语法(uniform in转载 2014-05-27 14:05:17 · 661 阅读 · 0 评论 -
继承深入理解-----effective C++条款36、37、38
effective C++讲解了很多我们队原创 2014-06-10 21:06:27 · 992 阅读 · 0 评论 -
STL各种容器如何正确的erase
STL中结点类容器(如:list,hash_map)遍历时进行删除时,需要这样做: for(list ::iterator iter = m_list.begin(); iter != m_list.end(); ) { if(需要删除) { m_list.erase(iter++原创 2014-05-14 10:52:02 · 1903 阅读 · 0 评论 -
顶层const和底层const
顶层const如前所述,指针本身是一个对象,它又可以指向另外一个对象。因此,指针本身是不是常量以及指针所指的是不是一个常量就是两个相互独立的问题。用名词顶层const(top-level const)表示指针本身是个常量,而用名词底层const(low-level const)表示指针所指的对象是一个常量。更一般的,顶层const可以表示任意的对象是常量,这一点对任何数据类型都适用转载 2014-05-29 14:42:44 · 1536 阅读 · 0 评论 -
vs引入新lib-----附cocos2dx3.0 http通信lib库添加
先说说普通的两种方法(请直接只用方法3来添加):方法1: 通过设置工程配置来添加lib库.转自网上:A、添加工程的头文件目录:工程---属性---配置属性---c/c++---常规---附加包含目录:加上头文件存放目录。B、添加文件引用的lib静态库路径:工程---属性---配置属性---链接器---常规---附加库目录:加上lib文件存放目录。C原创 2014-07-04 10:57:45 · 2190 阅读 · 0 评论 -
STL中的常用算法介绍以及使用
一、非变异算法是一组不破坏操作数据的模板函数,用来对序列数据进行逐个处理、元素查找、子序列搜索、统计和匹配。非变异算法具有极为广泛的适用性,基本上可应用与各种容器。1查找容器元素find它用于查找等于某值的元素。它在迭代器区间[first,last)(闭开区间)上查找等于value值的元素,如果迭代器i所指的元素满足*i=value,则返回迭代器i;未找到满足条件的元素,返转载 2014-05-31 16:37:20 · 796 阅读 · 0 评论 -
VS2010内存泄露检测以及检测工具下载
在程序执行过程中,发现程序的内存总是一直涨,怀疑发生了 内存泄露。经检查,有两个HINTERNET没有InternetCloseHandle()。但是根本原因是指针没有delete,并不是不记得delete,有些时候前面各种判别会使后面delete被忽视。在VS2010自带的Debug模式下检测内存泄露,这只是初级的,比如在程序关闭的时候会显示内存泄露,这些泄露大部分不是真原创 2012-01-06 12:36:34 · 2105 阅读 · 0 评论 -
C++代码注释规范
1 源文件头部注释Ø 列出:版权、作者、编写日期和描述。Ø 示例:/*************************************************Copyright:buptAuthor:Date:2010-08-25Description:描述主要实现的功能****************************转载 2014-07-05 10:07:48 · 4010 阅读 · 0 评论 -
C++11 function使用
vectorint> vec{3,5,7,8,9,43}; sort(vec.begin(), vec.end(), greater_equalint>());原创 2014-06-05 19:19:01 · 10622 阅读 · 0 评论 -
Lua学习笔记(一) vs2013如何在C++中调用Lua(修正版)
最近Cocos2dx的学习卡壳了,一般的照抄代码我不想写上来,但想示例也想得我头晕...为了放松大脑调整状态于是开始学习Lua。Lua的语法学习还是比较简单的,学过javascript或者vbscript的应该很容易就能上手,那些Lua独有的特性也是比较有趣,例如不定数目的多参数函数和随意的参数返回值等。这里想要吐槽一下最近用来学习Lua的书籍《XX开发实践指南》(虽然没有写全名不过搜索过转载 2014-08-08 17:22:29 · 1415 阅读 · 0 评论 -
C++11智能指针内存泄漏查找方法
可以在XCODE中先查看是否存在内存泄漏,如果有就一步一步查。1.析构函数打断点,查看退出场景时某类的析构函数是否调用。2.强引用的地方查看是否有循环引用。如果有,使用weak_ptr 如可以,最好保证只有一个最必要的地方对其持有强引用并管理。3.查看基类是否是虚析构函数。 如果不是就改正。4.lambda表达式[pointer]中的引用指针是永久持有,所以不原创 2016-10-24 09:55:45 · 2005 阅读 · 0 评论 -
cocos2dx 高性能高斯模糊(包含lua接口)
根据官方的帖子实现的高斯模糊当前屏幕内容 点击打开链接1.截屏缩小压缩,减小像素采样的优化算法。默认截屏后缩小到原来的1/4。2.C++代码进行一次性高斯模糊。避免使用shader造成的渲染掉帧以下是C++部分代码: /* * 高斯模糊接口 缩放因子:iScale,截图会把全屏压缩为1/iScale大 */ static void gaussianBlur原创 2016-12-07 10:15:49 · 4378 阅读 · 1 评论 -
运算符的优先级古诗顺口溜记忆法
记忆《秋夜打渔图》 秋夜打渔图 扩大成甲鱼,大小不等鱼; 位于一伙伙,渔火三服豆; 意义:渔夫捕鱼,有甲鱼,大小不等的鱼,都在一伙伙渔夫的手里,河面上有星星点点的渔火,还有丰收的大豆,整个呈现出丰收的景象; 1扩:代表括号; 2大:谐音,单转载 2014-05-23 15:45:14 · 962 阅读 · 0 评论 -
STL容器和算法的函数表
该篇分为十一部分,分别是:vector类的主要成员、deque类的主要成员、list类的主要成员、stack类的主要成员、queue类的主要成员、priority_queue类的组要成员、set类的主要成员、multiset类的主要成员、map类的主要成员、multimap类的主要成员、STL算法函数(一)vector类的主要成员vector是可边长的向量,比较灵活☆ value_ty转载 2014-06-06 14:33:28 · 771 阅读 · 0 评论 -
explicit概念及基本使用方法
C++提供了关键字explicit,可以阻止不应该允许的经过转换构造函数进行的隐式转换的发生。声明为explicit的构造函数不能在隐式转换中使用。这句话在代码中lei's转载 2014-05-16 17:36:15 · 1610 阅读 · 0 评论 -
C++ Primer Plus-------内存模型与名称空间
编译存储作用域定位原创 2014-05-12 11:48:24 · 610 阅读 · 0 评论 -
交换两个数的值的三种指针方法——指针的引用和指向指针的指针
#import //指针的指针void swap( int **a, int **b){ int *temp = *a; *a = *b; *b = temp;}int main(int argc, const char * argv[]){ int m =1, n =3; int *x = &m , *y= &n; int **xx原创 2014-05-17 14:29:29 · 3246 阅读 · 0 评论 -
C++ Primer Plus巩固 新特性 新理解(2)
//// main.cpp// C_Primer_Plus_2//// Created by Ben_22 on 14-5-10.// Copyright (c) 2014年 Ben_22. All rights reserved.//#include #include int sum( const int arr[], size_t n);原创 2014-05-10 21:37:38 · 668 阅读 · 0 评论 -
C++ Primer Plus的string类的简单实现
重载构造函数,特别是重载复制构造函数。为什么要重载复制构造函数?转载 2014-05-14 11:05:19 · 766 阅读 · 0 评论 -
函数探幽
主要尝试了一下C++11的新特性原创 2014-05-12 11:44:23 · 652 阅读 · 0 评论 -
C++ Primer Plus巩固 新特性 新理解
//// main.cpp// Ben_C_Lession_3//// Created by Ben_22 on 14-5-9.// Copyright (c) 2014年 Ben_22. All rights reserved.//#include #include #include #include #include #i原创 2014-05-09 21:46:05 · 715 阅读 · 0 评论 -
有关返回对象的说明------指向对象的引用、指向对象的const引用和const对象
返回指向const对象的引用原创 2014-05-14 12:48:42 · 1078 阅读 · 0 评论 -
函数指针——求数组最大值和和
#import typedef int iArr[10];typedef int(* PFUN)(int, int);typedef struct NameAndAdress { char name[10]; PFUN pFun;}NameAndAdress;int iMax(int a, int b){ return (a>b)?a:b;}int iSu原创 2014-05-21 17:59:52 · 1524 阅读 · 0 评论 -
快速排序
可以参考这个博客,写的很清楚,可以叫快速排序为 挖坑填坑排序。http://blog.csdn.net/morewindows/article/details/6684558原创 2014-05-12 15:26:12 · 482 阅读 · 0 评论 -
lua闭包,ios block,C++lambda函数
下面是三篇描述这三种机制的文章,lua闭包,ios block,C++lambda函数原创 2014-05-26 17:26:53 · 1799 阅读 · 0 评论 -
日积月累-----学习笔记
const放在函数后面表示什么?表示这个函数是一个只读函数,不能对原创 2014-05-14 19:25:43 · 765 阅读 · 0 评论 -
C++标准库定义的函数对象及使用
function原创 2014-06-05 11:35:48 · 1297 阅读 · 0 评论 -
new带括号与不带括号的区别
自定义类类型: 如果该类没有定义构造函数(由编译器合成默认构造函数)也没有虚函数,那么class c = new class;将不调用合成的默认构造函数,而class c = new class();则会调用默认构造函数。 如果该类没有定义构造函数(由编译器合成默认构造函数)但有虚函数,那么class c = new class;和class c = new转载 2014-05-26 14:36:47 · 1296 阅读 · 0 评论 -
重载运算符以及友元函数浅析
class Time{private : int hours; int minutes;public: Time(); Time(int h , int m=0); Timeoperator+ (const Time &t)const;};Time Time::operator+(constTime &t)c原创 2014-05-13 17:19:59 · 804 阅读 · 0 评论 -
_stdcall_cdecl fastcall 调用方式详解
在C语言中,假设我们有这样的一个函数:int function(int a,int b)调用时只要用result = function(1,2)这样的方式就可以使用这个函数。但是,当高级语言被编译成计算机可以识别的机器码时,有一个问题就凸现出来:在CPU中,计算机没有办法知道一个函数调用需要多少个、什么样的参数,也没有硬件可以保存这些参数。也就是说,计算机不知道怎么给这个函数传递参转载 2017-03-07 18:37:40 · 1081 阅读 · 0 评论