Cocos2d-x之Log输出机制

|   版权声明:本文为博主原创文章,未经博主允许不得转载。

  在cocos2d-x中,我们使用log这个函数进行输出,log可以输出很多参数,它的使用方式就和使用c语言中的printf的使用方式差不多。log其实是一个跨平台的日志输出的API,它在visual stdio中,就包含visual stdio的输出API,在苹果平台使用的是NSlog,在Andriod平台使用的是Andriod平台的日志输出工具,因为在苹果和windows,phone等平台的底层所包装的输出机制是不一样的,但是因为cocos2d-x将每个平台的底层输出机制全部包装,因此我们可以在各个平台中跨平台的输出。

在cocos2d-x中有多个输出机制:
CCLOG:CCLOG必须是在调试模式下才打印log信息
CCLog: CCLOG是在调试模式下的CCLog,CCLog在任何情况下都会打印log信息

void accelerationTest::LogTest()
{
	CCLOG("My name is %s, 今年 %d 岁", "llllll", 210);
	CCLOG("floats: %4.2f %+.0e %E \n", 3.1416, 3.1416, 3.1416);
}
void accelerationTest::onAcceleration(cocos2d::Acceleration* acc, cocos2d::Event* unused_event)
{
	float x = acc->x;
	float y = acc->y;
	float z = acc->z;

	//一些加速度事件的操作
	//.....
	LogTest_1();
	CCLOG("[%f, %f, %f]", x, y, z);
}

时间: 2024-07-29 11:07:54

Cocos2d-x之Log输出机制的相关文章

写自己的游戏 - 用颜色来区分不同的log输出(cocos2d-x) 同样适用于其他游戏引擎

游戏脚本化开发已经成为一种主流的趋势,伴随着产生大量的人才需求.近两年,各个游戏公司对于lua程序员的需求明显是增长额有点过分了,真的是太不正常了.抛开市场化需求的东西不谈,我们谈一些技术,一些琐碎的,可有可无,非重点的技术.近几天我都在写客户端的开发框架,目的就是让LUA程序员可以使用一款自己喜欢的编辑器,版本控制工具以及部分内部工具就可以随心所欲的开发逻辑模块,这对我来说也算是满有挑战性的,不过我喜欢,反正我都是写给自己玩,又不用别人去要求什么,所以随心所欲吧,尽量做到最好. 对于cocos

对于Android系统Log输出日志的封装LogUtils

MainActivity如下: package cc.cn.logutil; import android.os.Bundle; import android.app.Activity; /** * Demo描述: * 对于Android系统Log输出日志的封装LogUtils * 1 可修改LogUtils中的LEVEL值觉得哪些级别的日志可以输出. * 所以方便选择性输出日志或者屏蔽日志输出 * 2 输出的日志除了本想输出的信息外还包含了该日志输出时所属 * 的线程,类,方法名,已经在该方法

【Unity游戏开发之二】定制Debug.log输出

环境:Unity开发时会有很多的Debug.log输出测试 问题:最后游戏发布的时候,不希望在Produce发布环境也输出大量的日志,官方目前也没有正统的做法. 解决方法1: 重新封装 将Debug.log重新封装,自己添加开关. using UnityEngine; using System.Collections; public class Debuger { static public bool EnableLog = false; static public void Log(objec

【记录】尝试用android-logging-log4j去实现log输出内容到sd卡中的文件的功能

[背景] 折腾: [记录]给Android中添加log日志输出到文件 期间,已经试了: [记录]尝试用android中microlog4android实现log输出到文件的功能 但是不好用. 然后就是参考: http://stackoverflow.com/questions/2116260/logging-to-a-file-on-android 去看看: http://code.google.com/p/android-logging-log4j/ [[折腾过程] 1.去: https://

RTP 记录 log 的机制

我们 RCV 这边经常跑的一个concurrent request RTP: Receiving Transaction Processor, 主要是用来处理 RCV_TRANSACTIONS_INTERFACE 里面的数据的. 这个 concurrent program 里面包含许多文件, 比较重要的有: ident RVCTP RVCTP: $Header: rvctp.oc 120.0.12000000.1 2007/01/16 23:53:49 appldev ship $ $Heade

一个小巧的C++Log输出到文件类 (转)

http://blog.csdn.net/dpsying/article/details/17122739 有时候需要输出一些程序运行的信息,供我们不需要调试就可以直接查看程序运行状态.所以我们需要在程序中加入一些LOG输出. 适合涉及到虚拟机调试一些关于驱动等的程序时,或进行远程调试时. 搜了些log工具,不够轻……还是简单实现下吧 贴上来,可能有用的上: Log.h [cpp] view plaincopy /** * 用于输出log文件的类. */ #ifndef LOG_H #defin

隔一段时间应用就会挂掉(进程在,但停止响应,也无log输出),必须重启tomcat

此处是转载的  是给自己做的备注 问题:隔一段时间应用就会挂掉(进程在,但停止响应,也无log输出),必须重启tomcat 原因查找:由于tomcat自身log中并无错误产生,磁盘空间足够,读写也正常,排除其他原因后怀疑是jvm崩溃导致,于是查gc日志:从上图可以看出每次full GC是老年代内存占用量相当小,远没有达到它的最大值,持久代也一样,而且每次GC过后,占用量基本没有变化,也就是说,每一次full GC都是在做无用功,白白浪费掉了一大批性能.从内存占用率方面看不是内存分配不够,应该是程

Unity3D Log 收集机制

最近做项目的时候发现,需要有一个完整的log机制.这样不仅方便调试而且方便观察. 一.需求 目前我认为一个完善的log机制应该是这样的. 一.双击定位 二.生命周期是全局的 三.输出包括consloe 和 log 日志,并且这些log的打印是可配置的. 四.未完待续,如果你有更好的想法,请留言. 二.代码实现 不废话,直接上代码 using UnityEngine; using System; using System.Text; using System.IO; using System.Co

cocos2dx 3.9.1 mac模拟器log输出bug修正

今天发现某些情况下mac模拟器会出现不输出log的情况, 跟踪了一下发现问题出现在mac/SimulatorApp.mm文件的handleNotification方法. NSString *str = [[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding] autorelease]; 这句代码在某些情况下str会为nil值导致模拟器不会输出任何log,  原因可能是data的编码中存在个别字符乱码导致整体不输出的情况