超越

寻找心中的那份自信

[C++基础]虚继承实现原理

在C++中,我们会遇到virtual这个关键字,但是它有两种含义:虚函数和虚继承,它们两个是完全无相关的两个概念。 什么是虚继承 虚继承是解决C++多重继承问题的一种手段,从不同途径继承来的同一基类,会在子类中存在多份拷贝。这将存在两个问题:其一,浪费存储空间;第二,存在二义性问题,通常可以...

2019-04-12 12:54:00

阅读数 26

评论数 0

[C++基础]虚析构函数

虚析构函数是为了解决这样的一个问题:基类的指针指向派生类对象,并用基类的指针删除派生类对象。如果某个类不包含虚函数,那一般是表示它将不作为一个基类来使用。当一个类不准备作为基类使用时,使析构函数为虚一般是个坏主意。因为它会为类增加一个虚函数表,使得对象的体积翻倍,还有可能降低其可移植性。所以基本的...

2019-04-07 23:36:24

阅读数 90

评论数 0

[C++基础]多态虚函数表详解

C++相对其他面向对象语言来说,之所以灵活、高效。很大程度的占比在于其多态技术和模板技术。C++虚函数表是支撑C++多态的重要技术,它是C++动态绑定技术的核心。 多态对象创建及内存分布 假设有一个基类ClassA,一个继承了该基类的派生类ClassB,并且基类中有虚函数,派生类实现了基类的虚...

2019-04-02 14:22:18

阅读数 105

评论数 0

[C++基础]宏定义中操作符(#,##)的使用

# 和 ## 在宏定义(define)中经常可以看到,是预编译过程中的常用语句 ##是一个连接符号,用于把参数连在一起 #是“字符串化”的意思。出现在宏定义中的#是把跟在后面的参数转换成一个字符串 #define CONVERT(name) #name #define CAT(batman,...

2019-04-01 20:48:15

阅读数 30

评论数 0

[C++基础]强制转换运算符dynamic_cast

强制转换运算符是一种特殊的运算符,它把一种数据类型转换为另一种数据类型。强制转换运算符是一元运算符,它的优先级与其他一元运算符相同。 语法: dynamic_cast < new-type> ( expression )该运算符把expression转换成new-ty...

2019-03-30 17:30:35

阅读数 130

评论数 0

[C++基础]对象内存分布--虚继承

virtual在C++中最大的功能就是声明虚函数和虚基类。虚拟继承是为了解决多重继承下公共基类的多份拷贝问题。 虚继承 虚继承解决了菱形继承中对派生类拥有多个间接父类实例的情况。虚继承的派生类的内存布局与普通继承很多不同,主要体现在: 虚继承的子类,如果本身定义了新的虚函数,则编译器为其生成...

2019-03-26 17:28:50

阅读数 299

评论数 2

[cocos2dx]Delegate委托设计模式

实现委托机制demo的情景描述: LayerA是一个层,里面有个sprite,一旦A被初始化,这个sprite就会执行一个action;LayerB是另一个层。我在LayerB中加入了LayerA,但是要等到A中的那个sprite的action执行完毕后,B再立刻执行另外一个方法。 问题来了,我怎...

2019-03-04 16:18:40

阅读数 95

评论数 0

[架构]我的MVC使用

在整个 GUI 编程领域,MVC模式是GUI界面开发的指导模式,基于表现层分离的思想把程序分为三大部分:Model-View-Controller,呈三角形结构。Model是指数据以及应用程序逻辑,View是指 Model的视图,也就是用户界面。这两者都很好理解,关键点在于Controller的角...

2019-02-26 17:49:24

阅读数 50

评论数 0

[cocos2dx]点击android back虚拟键,关闭当前界面

  BaseKeyEvent头文件 //需要响应返回按钮的,继承这个类,重写 OnBaseKey //EventKeyboard::KeyCode::KEY_BACK class BaseKeyListener { public: BaseKeyListener(void); ...

2019-02-22 12:50:21

阅读数 57

评论数 0

[cocos2dx]tableview的使用

TableView,ListView都继承自ScrollViewListView中的每个单元称为item,TableView的每个单元称为cell,如果分别创建20个单元,但每次只能显示5个单元。当ListView创建的时候,会直接创建20个item;而TableView只会创建5个cell,然后...

2019-02-22 11:20:34

阅读数 93

评论数 0

[cocos2dx]从a点移动到b点

convertToWorldSpace用于将一个相对坐标转化为绝对坐标,convertToNodeSpace则是将一个绝对坐标转化为一个相对坐标。 这里的相对坐标指的是相对于某一个CCNode的坐标(CCNode左下角为0,向右向上为正),这里的绝对坐标是相对于屏幕的坐标(屏幕左下角为0,向右向上...

2018-11-28 18:05:30

阅读数 299

评论数 0

[iOS概念]Apple Pay与IAP的区别

Apple Pay是什么? 在Apple Pay的发布会上,Eddy Cue表示,苹果并没有兴趣建立一个收集用户数据的业务,苹果并不知道你购买了什么,不知道你是从哪里购买的,为了这个商品花了多少钱。所以这也就是苹果和支付宝,微信等最大的不同:Apple Pay并不会将资金存放在Apple Pay...

2018-11-20 12:00:20

阅读数 613

评论数 0

[JS]你不知道的Event Loop

从一道面试题说起 setTimeout(function() { console.log(111); }, 0); // 这里定时器时间设置为0ms后执行 console.log(222); 相信这道题很多人都看过,结果是先输出222,再输出111 可能新手会犯错,认为定时器设置0...

2018-11-05 13:45:01

阅读数 107

评论数 0

[OpenGL]概念--渲染管线

在OpenGL中任何事物都在3D空间中,但是屏幕和窗口是一个2D像素阵列,所以OpenGL的大部分工作都是关于如何把3D坐标转变为适应你屏幕的2D像素。3D坐标转为2D坐标的处理过程是由OpenGL的图形渲染管线完成的。图像渲染管线可以被划分为两个主要部分:第一个部分把你的3D坐标转换为2D坐标,...

2018-10-25 12:01:42

阅读数 141

评论数 0

[Android]Android.mk学习(二)

import-module的功能 导入外部模块的.mk文件 ,和 include基本一样。 概念上的区别是include导入的是由我们自己写的.mk。而import-module导入的是外部库、外部模块提供的.mk。import-module的使用:$(call import-module,相对...

2018-10-19 17:03:43

阅读数 103

评论数 0

[Cocos2dx]cocos luacompile命令加密lua文件

用法介绍 命令cocos luacompile --h查看用法 usage: cocos luacompile [-h] [-v] [-s SRC_DIR_ARR] [-d DST_DIR] [-e] [-k ENCRYPTKEY] [-b E...

2018-10-19 10:56:37

阅读数 897

评论数 0

[Cocos2dx] C++自定义类绑定到Lua

Cocos2dx通过工程里面的tools/toLua工具生成注册C++函数到lua的函数cpp文件  bindings-generator脚本的工作机制  不用编写.pkg和.h文件了,直接定义一个ini文件,注册到Lua环境里的模块名是什么,就行了。  摸清了toLua++工具的生成方法,...

2018-10-15 18:06:33

阅读数 136

评论数 0

[cocos2dx]坐标转换

在Cocos2d-x中提供了以下的API用来进行坐标转换。 /** * 将世界坐标转换成节点坐标,忽略锚点的影响;结果是以点为单位。 */ Vec2 convertToNodeSpace(const Vec2& worldPoint) const; /** * 将节点...

2018-10-09 16:47:27

阅读数 233

评论数 0

[Android]基础--Activity的四种启动模式

Activity的管理机制 Android的管理主要是通过Activity栈来进行的。当一个Activity启动时,系统根据其配置或调用的方式,将Activity压入一个特定的栈中,系统处于运行(Running or Resumed)状态。当按Back键或触发finish()方法时,Activi...

2018-09-03 18:14:11

阅读数 110

评论数 0

[Cocos2dx]ListView添加Item,滑动时不触发点击事件

//获取控件 vector<string> vecNodeName = {"PanelClassListItem","lvClass"}; for (int i=0; i &a...

2018-08-10 20:34:33

阅读数 763

评论数 0

提示
确定要删除当前文章?
取消 删除