• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Error

            C++博客 首頁 新隨筆 聯(lián)系 聚合 管理
              217 Posts :: 61 Stories :: 32 Comments :: 0 Trackbacks

            #

            可能出現(xiàn)的編譯提示:std::bind  expects 6 arguments - 7 provided
             
            VC++上默認(rèn)的bind和tuple最多只能有5個參數(shù),高于5個就會出現(xiàn)編譯bug,,,今天有遇到這個問題了,記錄下。想來慚愧,第一次遇到還是多年以前,這次處理有找了一天多。。。

            VC下這個宏是用來控制參數(shù)最大個個數(shù)的,看2012的宏定義,最多能支持9個,但是placeholder能到20個。。。
            -D_VARIADIC_MAX=9   或者 #define _VARIADIC_MAX 9
            posted @ 2017-10-08 22:35 Enic 閱讀(479) | 評論 (0)編輯 收藏

            定時器使用:(cocos貌似沒有提供詳細(xì)參數(shù)文檔,參數(shù)數(shù)量不一樣的時候每個參數(shù)表達(dá)的含義不一樣,使用如果問題,請自行讀代碼,否則真不知道每個參數(shù)的含義是什么)
            ------------------------------------------------------------------------------
            1.注冊定時器
            //C++: js_CCScheduler_schedule
            cc.director._scheduler.schedule(this, this.onTimerTest.bind(this), 1, cc.REPEAT_FOREVER, 0, false, "keyCountDownTime");
            2.定時器回調(diào)原型
            onTimerTest : function (interval) {
            3.取消定時器
            cc.director._scheduler.unschedule("keyCountDownTime", this);
            ------------------------------------------------------------------------------
            cc.director._scheduler.schedule(this, this.onTimerTest.bind(this), 1);
            cc.director._scheduler.unschedule(this, this.onTimerTest.bind(this));
            ------------------------------------------------------------------------------
            直接調(diào)用node注冊,可以省略第一個target參數(shù)
            ------------------------------------------------------------------------------
            暫時沒有發(fā)現(xiàn)能直接使用free函數(shù)做定時器
            posted @ 2017-07-12 15:20 Enic 閱讀(325) | 評論 (0)編輯 收藏

            exit 0   #被識別為編譯成功
            exit 1   #唄識別為編譯失敗


            比15年剛剛接觸的時候稍微好用點(diǎn)了,至少svn中文路徑,cmake支持,android打包什么的都有了,有必要再深入看一點(diǎn)資料了
            另外為了用起來方便命令行還需要多了解點(diǎn):java -jar jenkins-cli.jar -s http://22.11.140.38:9080/jenkins/  help
            posted @ 2017-06-26 14:49 Enic 閱讀(210) | 評論 (0)編輯 收藏


            namespace DesignPattern
            {
                // 分離M和V的代碼
                namespace MV
                {
                    class Model
                    {

                    };

                    class View
                    {

                    };
                };

                // 切斷V對M的直接訪問,對M操作的代碼由C集中完成,M只需要做好更新到V的操作
                namespace MVC
                {
                    class Model
                    {

                    };

                    class View
                    {

                    };

                    class Controller
                    {

                    };
                };

                // 切斷M-V的耦合,變化的代碼集中到P,做到M和V完全隔離
                namespace MVP
                {
                    class Model
                    {

                    };

                    // 在MVP模式里,View只應(yīng)該有簡單的Set/Get的方法,用戶用戶輸入和設(shè)置界面顯示的內(nèi)容,
                    
            // 除此就不應(yīng)該有更多的內(nèi)容,絕不容許直接直接訪問Model
                    class View
                    {

                    };

                    class Presenter 
                    {

                    };
                };


                // 有了綁定以后實(shí)現(xiàn),其實(shí)和MVP好像沒什么太大區(qū)別,功能幾種到VM上
                namespace MVVM
                {
                    class Model
                    {

                    };

                    class View
                    {

                    };

                    class ViewModel
                    {

                    };
                };


            }
            posted @ 2017-06-01 17:34 Enic 閱讀(261) | 評論 (0)編輯 收藏

            不探討多個線程持有同一個string對象的場景,只分析copy on write特性引起的,拷貝一個新對象發(fā)送到另外的線程后引起的安全問題。 假設(shè)cow基于reference counting實(shí)現(xiàn),那么ref為2,其中一個線程開始修改,需要找復(fù)制,然后減少引用計(jì)數(shù),然后操作自己的副本。這種場景下是安全的。但是不是所有的視線rec都是原子操作,所以,,,
            posted @ 2017-05-08 22:52 Enic 閱讀(320) | 評論 (0)編輯 收藏

            1.bugly sdk整個目錄拷貝到cocos_sdk/external
            2.在項(xiàng)目中將bugly_sdk/agent/android/*.jar;bugly_sdk/android/*.jar拷貝到項(xiàng)目libs目錄.!!!記得要添加到j(luò)ava的Referenced Libraries否則是不生效的。
              當(dāng)前需要加入進(jìn)來的是兩個jar包,一個sdk的一個插件的
            3.在項(xiàng)目中將bugly_sdk/android/*.so拷貝到項(xiàng)目的jni/prebuilt
            4.Android.mk文件調(diào)整:
            #集成libBugly.so,添加在LOCAL_PATH := $(call my-dir)
            LOCAL_MODULE := bugly_native_prebuilt
            LOCAL_SRC_FILES := prebuilt/$(TARGET_ARCH_ABI)/libBugly.so
            include $(PREBUILT_SHARED_LIBRARY)
            #引用bugly/Android.mk定義的Module,在LOCAL_STATIC_LIBRARIES := xxx之后
            LOCAL_STATIC_LIBRARIES += bugly_crashreport_cocos_static
            #添加在末尾
            $(call import-module, external/bugly)
            5.編輯AndroidManifest.xml添加權(quán)限:
            <uses-permission android:name="android.permission.READ_PHONE_STATE" />
            <uses-permission android:name="android.permission.INTERNET" />
            <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
            <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
            <uses-permission android:name="android.permission.READ_LOGS" />
            6.初始化
            在AppDelegate::applicationDidFinishLaunching()接口調(diào)用CrashReport::initCrashReport(addId, debug)
            7.實(shí)際測試添加完成后大概半小時后生效
            posted @ 2017-04-17 19:51 Enic 閱讀(2128) | 評論 (0)編輯 收藏

            // plsit測試
            cc.log("begin test plist");
            cc.spriteFrameCache.addSpriteFrames("res/hall_entrance.plist");
            //var imageView = new ccui.ImageView("#hall_enter_3.png");  錯誤用法,js里邊需要通過ccui.Widget.PLIST_TEXTURE參數(shù)明確指定
            var imageView = new ccui.ImageView("hall_enter_3.png", ccui.Widget.PLIST_TEXTURE);
            this.addChild(imageView);




            ccui使用:
            在project.json中的modules屬性修改為:"modules" : ["cocos2d","extensions"],
            posted @ 2017-04-16 23:54 Enic 閱讀(374) | 評論 (0)編輯 收藏

            Q1:怎么輸出日志
            A1:cc.log();
            Q2: 日志怎么格式化輸出
            A2:cc.log("%d-%s", 123321, 'abc'); 目測和C類似,估計(jì)和console.log也類似,應(yīng)該基礎(chǔ)的js書里邊就有,改天專門研究
            Q3:為什么獲取到的Button、Sprite等控件的contentSize是(0, 0)
            A3: 應(yīng)為沒有在resource.js中添加,添加以后就能成功獲取到size,表現(xiàn)和native一樣了。猜測可能是在圖片加載的時候做了預(yù)處理。
            posted @ 2017-04-11 23:36 Enic 閱讀(198) | 評論 (0)編輯 收藏

            // ConsoleApplication2.cpp : 定義控制臺應(yīng)用程序的入口點(diǎn)。
            //

            #include "stdafx.h"
            #include <iostream>
            #include <cstdarg>
            #include <vector>

            // 變參函數(shù)例子
            // 中不包含類型信息,不包含數(shù)量信息。相對優(yōu)雅的解決方式有兩個:
            // 1.類似printf的方式,通過fmt字符串解決
            // 2.類似cocos::Sequence::create的方式,應(yīng)為全部是動畫指針,所以類型是約定好的統(tǒng)一類型,結(jié)束標(biāo)記可以使用NULL標(biāo)記
            void ParametListTest(int nStart, )
            {
                // 定義一個參數(shù)列表,用于接收解析""
                va_list parametList;

                // 輸出第一個參數(shù)
                std::cout << nStart << std::endl;

                // nStart是‘’之前最后一個函數(shù)參數(shù),用于內(nèi)存定位,獲取parametList
                va_start(parametList, nStart);

                // 里邊的具體參數(shù)個數(shù)是獲取不到的
                
            // printf的處理和這里不一樣:printf根據(jù)fmt字符串中的"%"標(biāo)記來萃取參數(shù)類型、數(shù)量

                int nTem = 0;
                // 重parametList獲取下一個類型為int的變量
                nTem = va_arg(parametList, int);

                // -1作為結(jié)束標(biāo)記
                while (-1 != nTem)
                {
                    std::cout << nTem << std::endl;

                    nTem = va_arg(parametList, int);
                }

                va_end(parametList);
            }


            // 模版參數(shù)最后一個遞歸(帶重載的遞歸)
            void TParametListTest()
            {
            }

            // C++ 1x變參模版
            template<typename T, typename  Args>
            void TParametListTest(T nStart, Args  args)
            {
                std::cout << nStart << std::endl;

                // 可以直接展開多參數(shù)的定義
                
            // 遞歸一次參數(shù)減少一個,最后會調(diào)用void重載
                TParametListTest(args);
            }





            int main()
            {
                // 假設(shè)需要實(shí)現(xiàn)的功能是輸出,這個demo已經(jīng)滿足條件
                
            // 假設(shè)需要實(shí)現(xiàn)的是類似cocos的時序動畫功能,其實(shí)把std::cout換成成員變量,或者某個全局函數(shù)即可實(shí)現(xiàn)

                ParametListTest(1, 2, 3, 3, 3, 3, -1);
                std::cout << "----------------------------" << std::endl;
                TParametListTest(1, 2, 3, 3, 3, 3);  // 采用1X可變模版參數(shù)語法實(shí)現(xiàn)的,可以抹掉末尾的結(jié)束標(biāo)記

                return 0;
            }
            posted @ 2017-04-04 13:11 Enic 閱讀(918) | 評論 (0)編輯 收藏

            #filename: boost-1-60-0\tools\build\src\user-config.jam
            #b2.exe toolset=gcc-ndk4.8 --without-math link=static runtime-link=static target-os=linux --stagedir=android
            #bjam.exe toolset=gcc-ndk4.8 --without-math link=static runtime-link=static target-os=android --stagedir=android
            import os ;  
               
            if [ os.name ] = CYGWIN || [ os.name ] = NT {  
            androidPlatform = windows-x86_64 ;  
            }  
            else if [ os.name ] = LINUX {  
            androidPlatform = linux-x86_64 ;  
            }  
            else if [ os.name ] = MACOSX {  
            androidPlatform = darwin-x86 ;  
            }  
               
            modules.poke : NO_BZIP2 : 1 ;  
            ANDROID_NDK = D:/Cocos/android_ndk/android-ndk-r10d ;  
            using gcc : ndk4.8 : 
            $(ANDROID_NDK)/toolchains/arm-linux-androideabi-4.8/prebuilt/$(androidPlatform)/bin/arm-linux-androideabi-g++ :  
            <archiver>$(ANDROID_NDK)/toolchains/arm-linux-androideabi-4.8/prebuilt/$(androidPlatform)/bin/arm-linux-androideabi-ar  
            <ranlib>$(ANDROID_NDK)/toolchains/arm-linux-androideabi-4.8/prebuilt/$(androidPlatform)/bin/arm-linux-androideabi-ranlib  
            <compileflags>--sysroot=$(ANDROID_NDK)/platforms/android-9/arch-arm  
            <compileflags>-I$(ANDROID_NDK)/sources/cxx-stl/gnu-libstdc++/4.8/include  
            <compileflags>-I$(ANDROID_NDK)/sources/cxx-stl/gnu-libstdc++/4.8/libs/armeabi/include  
            <compileflags>-DNDEBUG  
            <compileflags>-D__GLIBC__  
            <compileflags>-DBOOST_FILESYSTEM_VERSION=3  
            <compileflags>-lstdc++  
            <compileflags>-lgnustl_shared  
            <compileflags>-mthumb  
            <compileflags>-fno-strict-aliasing  
            <compileflags>-std=c++11  
            <compileflags>-O2  
            ;  
            using gcc : ndk4.9 : 
            $(ANDROID_NDK)/toolchains/arm-linux-androideabi-4.9/prebuilt/$(androidPlatform)/bin/arm-linux-androideabi-g++ :  
            <archiver>$(ANDROID_NDK)/toolchains/arm-linux-androideabi-4.9/prebuilt/$(androidPlatform)/bin/arm-linux-androideabi-ar  
            <ranlib>$(ANDROID_NDK)/toolchains/arm-linux-androideabi-4.9/prebuilt/$(androidPlatform)/bin/arm-linux-androideabi-ranlib  
            <compileflags>--sysroot=$(ANDROID_NDK)/platforms/android-9/arch-arm  
            <compileflags>-I$(ANDROID_NDK)/sources/cxx-stl/gnu-libstdc++/4.9/include  
            <compileflags>-I$(ANDROID_NDK)/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi/include  
            <compileflags>-DNDEBUG  
            <compileflags>-D__GLIBC__  
            <compileflags>-DBOOST_FILESYSTEM_VERSION=3  
            <compileflags>-lstdc++  
            <compileflags>-lgnustl_shared  
            <compileflags>-mthumb  
            <compileflags>-fno-strict-aliasing  
            <compileflags>-std=c++11  
            <compileflags>-O2  
            ;  
            posted @ 2017-04-01 14:51 Enic 閱讀(335) | 評論 (0)編輯 收藏

            僅列出標(biāo)題
            共22頁: 1 2 3 4 5 6 7 8 9 Last 
            国产精品久久精品| 婷婷伊人久久大香线蕉AV | 久久婷婷激情综合色综合俺也去| 久久久九九有精品国产| 久久精品aⅴ无码中文字字幕不卡| 久久精品国产亚洲麻豆| 人妻少妇久久中文字幕一区二区| www.久久热.com| 久久久久久免费视频| 欧美一级久久久久久久大片| 久久精品国产WWW456C0M| 99精品伊人久久久大香线蕉| 热re99久久精品国产99热| 亚洲中文字幕伊人久久无码| 久久中文字幕人妻丝袜| 久久精品一本到99热免费| AAA级久久久精品无码片| 久久香蕉一级毛片| 国产偷久久久精品专区| 无码人妻久久一区二区三区免费 | 91久久九九无码成人网站 | 狠色狠色狠狠色综合久久| 色狠狠久久综合网| 久久99久久成人免费播放| 三级韩国一区久久二区综合| 久久99精品综合国产首页| 亚洲中文字幕久久精品无码APP| 久久激情亚洲精品无码?V| 美女写真久久影院| 精品久久久久久国产91| 久久综合国产乱子伦精品免费| 久久久久亚洲国产| 久久青青国产| 久久久久久国产精品无码下载 | 日韩av无码久久精品免费| 亚洲午夜精品久久久久久app| 国内精品久久久久久久久电影网| 日本久久久精品中文字幕| 99久久婷婷免费国产综合精品| 久久久久久亚洲精品成人 | 国内精品伊人久久久久妇|