C/C++
o向阳花o
渴望向阳的温暖,绽放自己的光彩
展开
-
内存溢出和内存泄漏的区别
内存溢出 out of memory,是指程序在申请内存时,没有足够的内存空间供其使用,出现out of memory;比如申请了一个integer,但给它存了long才能存下的数,那就是内存溢出。内存泄露 memory leak,是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄露危害可以忽略,但内存泄露堆积后果很严重,无论多少内存,迟早会被占光。memory leak会最终会导原创 2017-05-03 00:05:48 · 336 阅读 · 0 评论 -
Lua时间转化 秒转换为日期
function common:second2DateString(second, withSecond) local hms = Split(FxGameMaths:formatSecondsToTime(second), ":") local dateStr = "" local h = tonumber(hms[1]) if h > 0 then if h >= 24 the原创 2016-10-17 15:26:02 · 9204 阅读 · 0 评论 -
对于类的调用方法
方法一:实例化一个类的对象,通过new方法 this.action = new FoxAni(parent);方法二:单例化private static _instance:PlayerService;static get instance():PlayerService { if (!this._instance) {原创 2016-10-17 14:30:18 · 635 阅读 · 0 评论 -
Static 的作用
static的作用(精辟分析) 在C语言中,static的字面意思很容易把我们导入歧途,其实它的作用有三条。(1)先来介绍它的第一条也是最重要的一条:隐藏。当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。为理解这句话,我举例来说明。我们要同时编译两个源文件,一个是a.c,另一个是main.c。下面是a.c的内容char a = 'A'原创 2016-05-19 14:35:52 · 392 阅读 · 0 评论 -
VS2013 win7安装提示核心功能严重错误
DDSet_Error: Internal error: 1058设置HTTP属性为自动就OK了原创 2016-04-11 09:48:41 · 6456 阅读 · 1 评论 -
GameScene 三木运算符
----组织架构GameScene( 战斗层 控制层)-- require("fightLayer")-- 创建hero (可以再次封装) -- hero:根据controllayer的状态进行控制,进行动作-- 执行的动作,释放技能-- 定时器 移动hero-- require("controlLayer")-- 加载资源,创建控制-- 移动原创 2016-01-24 23:47:19 · 955 阅读 · 0 评论 -
C++程序员对c 说的话
1、在 C++中几乎不需要用宏,用 const 或 enum 定义明显的常量,用 inline 避免函数调用的额外开销,用模板去刻画一族函数或类型,用 namespace 去避免命名冲突。2、不要在你需要变量之前去声明,以保证你能立即对它进行初始化。3、不要用 malloc,new 运算会做的更好4、避免使用 void*、指针算术、联合和强制,大多数情况下,强制都是设计错误的指示原创 2016-01-23 23:45:39 · 407 阅读 · 0 评论 -
析构 构造 赋值
拷贝构造(Copy contructor)由己存在的对象,创建新对象。也就是说新对象,不由构造器来构造,而是由拷贝构造器来完成。拷贝构造器的格式是固定的。class 类名{类名(const 类名 & another)拷贝构造体}class A{A(const A & another){}}1 系统提供默认的拷贝构造器。一经实现,不复存在。原创 2016-01-23 23:44:10 · 567 阅读 · 0 评论 -
简述strcpy、sprintf与memcpy的区别
三者主要有以下不同之处: (1)操作对象不同,strcpy的两个操作对象均为字符串,sprintf的操作源对象可以是多种数据类型,目的操作对象是字符串,memcpy 的两个对象就是两个任意可操作的内存地址,并不限于何种数据类型。 (2)执行效率不同,memcpy最高,strcpy次之,sprintf的效率最低。 (3)实现功能不同,strcpy主要实现字符串变量间的拷贝,sprin原创 2016-01-23 23:38:09 · 1236 阅读 · 0 评论 -
虚函数
为什么虚函数必须是类的成员函数:虚函数诞生的目的就是为了实现多态,在类外定义虚函数毫无实际用处。 为什么类的静态成员函数不能为虚函数:如果定义为虚函数,那么它就是动态绑定的,也就是在派生类中可以被覆盖的,这与静态成员函数的定义(:在内存中只有一份拷贝;通过类名或对象引用访问静态成员)本身就是相矛盾的。 为什么构造函数不能为虚函数:因为如果构造函数为虚函数的话,它将在执行原创 2016-01-23 23:37:00 · 364 阅读 · 0 评论 -
stl提供了三个最基本的容器:vector,list,deque
stl提供了三个最基本的容器:vector,list,deque。vector和built-in数组类似,它拥有一段连续的内存空间,并且起始地址不变,因此它能非常好的支持随即存取,即[]操作符,但由于它的内存空间是连续的,所以在中间进行插入和删除会造成内存块的拷贝,另外,当该数组后的内存空间不够时,需要重新申请一块足够大的内存并进行内存的拷贝。这些都大大影响了vector的效率。l原创 2016-01-23 23:33:38 · 308 阅读 · 0 评论 -
链表 合并
// 单链表.cpp : 定义控制台应用程序的入口点。 //单链表 #include "stdafx.h" #include #include using namespace std; typedef struct node { int data;//节点内容 node *next;//下一个节点 }node;原创 2016-01-23 23:31:12 · 303 阅读 · 0 评论 -
打印行号 文件名
在项目中使用[cpp] view plaincopy/******************************************************** * @author : ChenMH * @date : 2013/05/24 10:11 * @brief : 定义调试打印宏 ***************原创 2016-01-23 23:29:40 · 483 阅读 · 0 评论 -
字符串分割,字符串拷贝,单词逆置,单词逆置
l o v a b l ee l b a v o lint main(){ char s[] = "lovable"; char *beg = s; char *end = beg + strlen(beg) - 1;/*单词逆置*/ while(beg { char temp = *beg;原创 2016-01-23 23:27:34 · 502 阅读 · 0 评论 -
迭代器的遍历删除()
#include #include susing namespace std;int main(){ int arr[] = {10, 20, 30, 40, 10, 10, 50, 30}; vector vec(arr, arr+8);/* 一边遍历一边删除 应该注意++it*/ for(vector::iterator it原创 2016-01-23 23:17:04 · 1318 阅读 · 0 评论 -
单例模式
单例模式(Singleton)是软件开发中较常用的一种设计模式思想,在有些情况下,某一个事物我们只需要生成一个实例对象即可。比如,一台计算机可以同时连接多台打印机,但在某一时刻只能处理其中某一台的打印业务,因此计算机的打印程序只能有一个,所以就要通过单例模式来实现该功能以避免两个打印作业同时输出到打印机中。简单来说,单例模式就是在整个应用程序的生命周期中,单例类的实例对象最多只存在转载 2016-01-20 00:27:18 · 541 阅读 · 0 评论