3.cocos代码入口
模拟代码进入过程:
- main.cpp
#include <iostream>
#include "AppDelegate.h"
#include "CCApplication.h"
#include "CCApplicationProtocol.h"
using namespace std; int main()
{
AppDelegate app;
return CCApplication::sharedApplication()->run();
} - AppDelegate.h
#pragma once
#include "CCApplication.h"
class AppDelegate :
public CCApplication
{
public:
AppDelegate();
virtual ~AppDelegate(); virtual bool applicationDidFinishLaunching();//子类实现了接口
}; - AppDelegate.cpp
#include "AppDelegate.h"
#include <Windows.h> AppDelegate::AppDelegate()
{
} AppDelegate::~AppDelegate()
{
}
//真正的入口
bool AppDelegate::applicationDidFinishLaunching()
{
MessageBoxA(0, "游戏开始", "提示", 1);
return false;
} - CCApplication.h
#pragma once
#include "CCApplicationProtocol.h" class CCApplication :
public CCApplicationProtocol
{
public:
CCApplication();
virtual ~CCApplication(); int run();
static CCApplication *sharedApplication();
static CCApplication *sm_pSharedApplication;
}; - CCApplication.cpp
#include "CCApplication.h"
#include "stddef.h" CCApplication * CCApplication::sm_pSharedApplication = NULL; CCApplication::CCApplication()
{
sm_pSharedApplication = this;//注意这个this是子类AppDelegate传过来的
} CCApplication::~CCApplication()
{
}
//run调用父类的applicationDidFinishLaunching()方法,父类的方法在子类中实现
16 int CCApplication::run()
17 {
18 applicationDidFinishLaunching();
19 return 0;
20 }
CCApplication * CCApplication::sharedApplication()
{
if(sm_pSharedApplication != NULL)
return sm_pSharedApplication;
} - CCApplicationProtocol.h
#pragma once
class CCApplicationProtocol
{
public:
CCApplicationProtocol();
virtual ~CCApplicationProtocol(); virtual bool applicationDidFinishLaunching() = ;
}; - CCApplicationProtocol.cpp
#include "CCApplicationProtocol.h" CCApplicationProtocol::CCApplicationProtocol()
{
} CCApplicationProtocol::~CCApplicationProtocol()
{
}
运行截图:
3.cocos代码入口的更多相关文章
- Unity3D 代码入口
最近有人提出一个unity一键导出html项目的设想,所以又回头看了一下unity 发现现在的untiy和我熟悉的有很大的不同了 在看unity的 entity 系统时,注意到,这个系统的入口比较特殊 ...
- cocos代码研究(5)Action学习笔记
理论部分 Action类也是cocos核心基础类之一,在游戏中起着非常重要的作用,继承自Ref,被 FiniteTimeAction(有限时间动作), Follow , 以及 Speed 继承. 有限 ...
- cocos代码研究(1)Node学习笔记
理论部分 Node类继承自Ref类,是cocos框架中基础底层的一个封装类,与画面渲染相关的类一般都是继承自该类,例如Scene,Layer,Sprite,Sprite3D,Label,SpriteB ...
- cocos代码研究(12)UI之Widget学习笔记
理论基础 Widget类,所有UI控件的基类. 这类继承自ProtectedNode和LayoutParameterProtocol. 如果你想实现自己的UI控件,你应该继承这个类. 被 VideoP ...
- cocos代码研究(7)即时动作子类学习笔记
理论部分 即时动作是会立即被执行的动作.他们没有持续时间动作(ActionInterval)的持续时间属性.继承自 FiniteTimeAction.被 CallFunc, FlipX, FlipY, ...
- cocos代码研究(6)有限时间动作类(FiniteTimeAction)学习笔记
理论部分 有限时间动作类继承自Action类,被 ActionInstant(即时动作) , 以及 ActionInterval(持续动作) 继承. 即时动作是会立即被执行的动作,被 CallFunc ...
- cocos代码研究(2)Label学习笔记
理论部分 Label类继承自Node类,中文翻译文字与字体,通常在应用开发中为模块作为提示和描述的作用,主要有3中不同的创建方式. 1.通过ttf字体包创建,通过指定本地已有的ttf格式的字体文件,创 ...
- cocos代码研究(17)Widget子类RadioButtonGroup学习笔记
理论基础 RadioButtonGroup可以把指定的单选按钮组织起来, 形成一个组, 使它们彼此交互. 在一个RadioButtonGroup, 有且只有一个或者没有RadioButton可以处于被 ...
- cocos代码研究(16)Widget子类RadioButton学习笔记
理论基础 RadioButton是一种特定类型的两状态按钮,它与复选框相似.它可以 和RadioButtonGroup一起使用,形成一个"组".继承自AbstractCheckBu ...
随机推荐
- go语言中在变量后加上接口是什么意思?
如题刚刚开始学习go 语言有些不懂: a.Data = make(map[string]interface{}) 我认为它是在申请a.Data map为字符串类型的空间,那么它后面接一个空的inter ...
- 学golang之前都需要哪些前置知识?
我学golang,感觉前面基础语法部分都很快能学会,但是到了goroutine,channel等后面的部分就看不懂了,是不是我学这个之前还得学习其他什么知识啊?(我有C语言基础,对于C语言里面的指针, ...
- CSS W3SCHOOLS
https://www.w3schools.com/csS/css3_buttons.asp
- struts2中标签库访问静态成员
struts2中是可以访问静态成员的,需要以下设置: 1.设置配置文件 struts.xml 中如下: <!-- 设置运行通过ONGL访问静态方法 --> <constant nam ...
- 企业级Nginx+Keepalived集群实战(双主架构)
随着Nginx在国内的发展潮流,越来越多的互联网公司都在使用Nginx,Nginx高性能.稳定性成为IT人士青睐的HTTP和反向代理服务器.Nginx负载均衡一般位于整个网站架构的最前端或者中间层,如 ...
- js获取css
原帖地址:http://kingphp.blog.163.com/blog/static/20042324420120109438458/ 我们通过dom.style获得的属性是有限制的,只能获取ht ...
- berkeley db储存URL队列的简单实现增、删、查
Berkeley DB(BDB)是一个高效的嵌入式数据库编程库,C语言.C++.Java.Perl.Python.Tcl以及其它非常多语言都有其相应的API. Berkeley DB能够保存随意 ...
- 18.angularJS服务
转自:https://www.cnblogs.com/best/tag/Angular/ 服务 AngularJS功能最基本的组件之一是服务(Service).服务为你的应用提供基于任务的功能.服务可 ...
- ADO.Net数据库帮助类
public interface IDBHelper { /// <summary> /// 执行sql语句 /// </summary> /// <param name ...
- Python(一) 基本类型
前言: 什么是代码? 代码是现实世界事物在计算机世界中的映射. 什么事写代码? 写代码是将现实世界中的事物用计算机语言来描述. 一.数字:整形与浮点型 整型:int 浮点型:float (没有单精度和 ...