在2dx中用CCLog输出日志,但是在vs的控制台中由于信息很多,很难发现。可以用下面方法,会重新启动一个黑色的控制台来输出日志
- #include"main.h"@H_404_25@
- #include"AppDelegate.h"@H_404_25@
- #include"CCEGLView.h"@H_404_25@
- #include"net/NetWork.h"@H_404_25@
- #include"adapter/RouterAdapter.h"@H_404_25@
- @H_404_25@
- USING_NS_CC;@H_404_25@
- #defineUSE_WIN32_CONSOLE@H_404_25@
- intAPIENTRY_tWinMain(HINSTANCEhInstance,@H_404_25@
- HINSTANCEhPrevInstance,@H_404_25@
- LPTSTRlpCmdLine,87); background-color:inherit; font-weight:bold">intnCmdShow)@H_404_25@
- {@H_404_25@
- UNREFERENCED_PARAMETER(hPrevInstance);@H_404_25@
- UNREFERENCED_PARAMETER(lpCmdLine);@H_404_25@
- #ifdefUSE_WIN32_CONSOLE@H_404_25@
- AllocConsole();@H_404_25@
- freopen("CONIN$","r",stdin);@H_404_25@
- freopen("CONOUT$","w",stdout);@H_404_25@
- freopen("CONOUT$",stderr);@H_404_25@
- #endif@H_404_25@
- @H_404_25@
- //createtheapplicationinstance@H_404_25@
- CCEGLView*eglView=CCEGLView::sharedOpenGLView();@H_404_25@
- eglView->setViewName("MT");@H_404_25@
- //eglView->setFrameSize(480,320);@H_404_25@
- returnCCApplication::sharedApplication()->run();@H_404_25@
- FreeConsole();@H_404_25@
- #endif@H_404_25@
- }@H_404_25@
注意宏定义: #defineUSE_WIN32_CONSOLE 要加上这一句,否则在编译android文件的时候会编译出错,要想在控制台上输出中文,要用printf函数,否则会使乱码。
同时要注意 命名空间的引用,否则printf函数不能使用
原文链接:https://www.f2er.com/cocos2dx/343895.html