C/C++基础
杭州大擎科技有限公司
合作微信dgd2580,公司地址浙江省杭州市滨江区聚园路B302,联系手机18815292074
展开
-
阅读《高质量C++C编程指南》和《google_c++编程风格(高清版)》笔记
在整理资料的时候,翻出这个笔记,方便以后自己回忆。这2本挺不错的,建议C++入门一段时间了的同学可以去看看。-------------------------------------------- 笔记部分,随便记得 --------------------------------------------1.应使用初始化代替声明 + 赋值的方式。int i;i = f();原创 2015-04-09 19:01:41 · 1488 阅读 · 1 评论 -
LuaBind --最强大的Lua C++ Bind
1 介绍LuaBind 是一个帮助你绑定C++和Lua的库.她有能力暴露 C++ 函数和类到 Lua . 她也有能力支持函数式的定义一个Lua类,而且使之继承自C++或者Lua. Lua类可以覆写从 C++ 基类继承来的虚函数. 她的目标平台是Lua 5.0 ,不能支持Lua 4.0 .她利用模板原编程技术实现.这意味着,你不需要额外的预处理过程去编译你的工程(编译器会替你转载 2015-12-03 16:15:13 · 7130 阅读 · 0 评论 -
VS2012 创建和使用DLL
1.为什么使用DLL?我们知道提高开发效率的一个很重要的途径就是代码复用,我们经常将一些常用的功能构造成相对独立的模块,并在之后的项目重复使用,代码复用的方式有两种:白盒复用:如ATL、MFC等,它们都以源代码的形式发布,源代码完全暴露给了程序员。白盒复用的缺点比较多,暴露源码不说,容易与我们自己的代码产生命名冲突,还有就是更新功能比较麻烦。黑盒复用:如Dll,转载 2015-12-03 16:20:00 · 424 阅读 · 0 评论 -
C++ 重写重载重定义区别
1 成员函数重载特征: a 相同的范围(在同一个类中) b 函数名字相同 c 参数不同 d virtual关键字可有可无2 重写(覆盖)是指派生类函数覆盖基类函数,特征是: a 不同的范围,分别位于基类和派生类中 b 函数的名字相同 c 参数相同 d 基类函数必须有v原创 2016-01-22 17:22:59 · 348 阅读 · 0 评论 -
C++ std::pair 与 std::make_pair
std::pair主要的作用是将两个数据组合成一个数据,两个数据可以是同一类型或者不同类型。例如std::pair 或者 std::pair等。pair实质上是一个结构体,其主要的两个成员变量是first和second,这两个变量可以直接使用。初始化一个pair可以使用构造函数,也可以使用std::make_pair函数,make_pair函数的定义如下:template pair mak转载 2016-01-12 16:22:04 · 14169 阅读 · 0 评论 -
C++中四种强制类型转换的区别
1、static_cast 用法:static_cast (expression) 该运算符把expression转换为type-id类型,但没有运行时类型检查来保证转换的安全性。它主要有如下几种用法: (1)用于类层次结构中基类和派生类之间指针或引用的转换 进行上行转换(把派生类的指针或引用转换成基类表示)是安全的 进行下行转换(把基类的指针或引原创 2016-01-14 17:56:08 · 550 阅读 · 0 评论 -
C++字符串解析
char s[] = "du gao da,shi * zhu ma!"; const char *d = " ,*"; char *p; p = strtok(s,d); while(p) { printf("%s\n", p); p = strtok(NULL, d); }原创 2016-01-15 10:30:15 · 401 阅读 · 0 评论 -
利用luabind从C++中传递指针到lua中,lua操作指针对象
(前提条件:1.配置好lua环境2.配置好boost库3.编译好luabind项目忙写的比较简单,详细使用可以QQ联系我545550598.主要功能是C++中传递一个指针到lua中,使用lua来操作C++中的指针对象,这样比把数据放到栈中去操作方便的多,直接对内存中的数据进行操作。先创建一个自己需要使用的操作的类。#pragm原创 2015-12-16 11:26:44 · 4385 阅读 · 0 评论 -
C++内联(inline)
C++的inline 我们可以用Inline来定义内联函数,不过,任何在类的说明部分定义的函数都会被自动的认为是内联函数。 内联函数必须是和函数体申明在一起,才有效。像这样的申明Inline Tablefunction(int I)是没有效果的,编译器只是把函数作为普通的函数申明,我们必须定义函数体。 inline tablefunction(int I) {returnI*I转载 2015-12-17 11:07:30 · 290 阅读 · 0 评论 -
数组指针和指针数组的区别
数组指针(也称行指针)定义 int (*p)[n];()优先级高,首先说明p是一个指针,指向一个整型的一维数组,这个一维数组的长度是n,也可以说是p的步长。也就是说执行p+1时,p要跨过n个整型数据的长度。如要将二维数组赋给一指针,应这样赋值:int a[3][4];int (*p)[4]; //该语句是定义一个数组指针,指向含4个元素的一维数组。 p=a; /转载 2015-12-17 11:01:35 · 173 阅读 · 0 评论 -
C++中 #define的用法
今天整理了一些#define的用法,与大家共享!1.简单的define定义#define MAXTIME 1000一个简单的MAXTIME就定义好了,它代表1000,如果在程序里面写if(i编译器在处理这个代码之前会对MAXTIME进行处理替换为1000。这样的定义看起来类似于普通的常量定义CONST,但也有着不同,因为define的定义更像是简单的文本替换,而不是作为一个转载 2015-12-17 10:41:31 · 444 阅读 · 0 评论 -
阅读《C++Primer》边看边敲代码
这个自己参加第一个成功上线的手游的时候看的一本关于C++比较基础的数据,当时的手游项目也是用C++写的。也是C++的入门书记吧,记得差不多实在2014.9时候看的。在边看这种语法类书的时候边看边敲代码是一个很不错的习惯。现在回忆起来当时也就那么点东西,当时感觉挺多的------------------------------------------------------------ .h原创 2015-04-09 19:13:02 · 650 阅读 · 0 评论 -
《EffectiveC++》笔记
1. class A { public: A(); }; class B { public: explicit B(int x =0, bool b =true); }; class C { explicit C(int x);原创 2015-05-06 18:55:12 · 300 阅读 · 0 评论 -
《C++标准程序库STL》笔记
5.STL标准模版库笔记在书上。看到5.4算法(5.4算法还没有看) STL = Standard Template Library,标准模板库 6.STL容器 6.2 vector #includevector是一个定义于namespace std内的templatenamespace std{ template> cl原创 2015-05-06 18:56:21 · 288 阅读 · 0 评论 -
基础,自己又容易忘记的,计算机基础知识
逻辑运算与按位运算 逻辑与&&:遇0为0;逻辑或||:遇1为1;逻辑非:遇0为1,遇1为0;按位与&:二进制每一位遇0为0;按位或|:二进制每一位遇1为1;按位异或^:0^0=0,0^1=1,1^0=1,1^1=0;按位取反~:二进制每一位取反。逻辑与和按位与的区别: 对于两个逻辑量,都是一样的; 对于两个整型量,就不一样了,例如,对2和原创 2015-10-12 20:24:02 · 440 阅读 · 0 评论 -
虚函数
虚函数联系到多态,多态联系到继承。所以本文中都是在继承层次上做文章。没了继承,什么都没得谈。下面是对C++的虚函数这玩意儿的理解。一, 什么是虚函数(如果不知道虚函数为何物,但有急切的想知道,那你就应该从这里开始)简单地说,那些被virtual关键字修饰的成员函数,就是虚函数。虚函数的作用,用专业术语来解释就是实现多态性(Polymorphism),多态性是将接口与实现进转载 2015-12-28 20:15:12 · 277 阅读 · 0 评论 -
C++中的单例模式
单例模式差不多就是一个全局的意思,只是为了更加的好看优雅才使用了单例模式。单例类CSingleton有以下特征:它有一个指向唯一实例的静态指针m_pInstance,并且是私有的;它有一个公有的函数,可以获取这个唯一的实例,并且在需要的时候创建该实例;它的构造函数是私有的,这样就不能从别处创建该类的实例。实例化:Singleton*ton1 = Singleton::GetIn原创 2015-12-28 20:19:33 · 295 阅读 · 0 评论 -
C++经典面试题
1,关于动态申请内存答:内存分配方式三种:(1)从静态存储区域分配:内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。全局变量,static变量。(2)在栈上创建:在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。(3)用malloc或转载 2015-12-15 10:16:29 · 330 阅读 · 0 评论 -
关键字typedef用法
C/C++语言中的typedef相信大家已经不陌生,本文对C/C++语言关键字typedef的各种用法作一个介绍。typedef,顾名思义,为“类型定义”,可以解释为:将一种数据类型定义为某一个标识符,在程序中使用该标识符来实现相应数据类型变量的定义。例如: typedefunsigned int UINT;int main (int argc,char *argv[]){转载 2015-12-17 10:23:46 · 244 阅读 · 0 评论 -
cocos2d结合cocostudio适配
这边的一款游戏产品用了比较早的游戏引擎版本,所以我这边的都比较老,适配这东西,项目一开始的时候就需要做,之后就不会出现返工的情况了。在项目开始做的时候,背景大图采用的是1136 * 640 大小的图片,如果遇到960*640的分辨率大小的时候,1136 * 640大小的图片2边都会被裁减掉一点点。这些都是可以寄接受的范围内。 关键步骤:1.创建1136 * 640 大小的画布大小 名字为“原创 2016-06-02 11:21:30 · 872 阅读 · 0 评论