• <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++博客 首頁 新隨筆 聯系 聚合 管理
              217 Posts :: 61 Stories :: 32 Comments :: 0 Trackbacks

            2017年10月8日 #

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

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

            2017年7月12日 #

            定時器使用:(cocos貌似沒有提供詳細參數文檔,參數數量不一樣的時候每個參數表達的含義不一樣,使用如果問題,請自行讀代碼,否則真不知道每個參數的含義是什么)
            ------------------------------------------------------------------------------
            1.注冊定時器
            //C++: js_CCScheduler_schedule
            cc.director._scheduler.schedule(this, this.onTimerTest.bind(this), 1, cc.REPEAT_FOREVER, 0, false, "keyCountDownTime");
            2.定時器回調原型
            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));
            ------------------------------------------------------------------------------
            直接調用node注冊,可以省略第一個target參數
            ------------------------------------------------------------------------------
            暫時沒有發現能直接使用free函數做定時器
            posted @ 2017-07-12 15:20 Enic 閱讀(326) | 評論 (0)編輯 收藏

            2017年6月26日 #

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


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

            2017年6月1日 #


            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只應該有簡單的Set/Get的方法,用戶用戶輸入和設置界面顯示的內容,
                    
            // 除此就不應該有更多的內容,絕不容許直接直接訪問Model
                    class View
                    {

                    };

                    class Presenter 
                    {

                    };
                };


                // 有了綁定以后實現,其實和MVP好像沒什么太大區別,功能幾種到VM上
                namespace MVVM
                {
                    class Model
                    {

                    };

                    class View
                    {

                    };

                    class ViewModel
                    {

                    };
                };


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

            2017年5月8日 #

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

            2017年4月17日 #

            1.bugly sdk整個目錄拷貝到cocos_sdk/external
            2.在項目中將bugly_sdk/agent/android/*.jar;bugly_sdk/android/*.jar拷貝到項目libs目錄.!!!記得要添加到java的Referenced Libraries否則是不生效的。
              當前需要加入進來的是兩個jar包,一個sdk的一個插件的
            3.在項目中將bugly_sdk/android/*.so拷貝到項目的jni/prebuilt
            4.Android.mk文件調整:
            #集成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添加權限:
            <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()接口調用CrashReport::initCrashReport(addId, debug)
            7.實際測試添加完成后大概半小時后生效
            posted @ 2017-04-17 19:51 Enic 閱讀(2130) | 評論 (0)編輯 收藏

            2017年4月16日 #

            // 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參數明確指定
            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 閱讀(375) | 評論 (0)編輯 收藏

            2017年4月11日 #

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

            2017年4月4日 #

            // ConsoleApplication2.cpp : 定義控制臺應用程序的入口點。
            //

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

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

                // 輸出第一個參數
                std::cout << nStart << std::endl;

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

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

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

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

                    nTem = va_arg(parametList, int);
                }

                va_end(parametList);
            }


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

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

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





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

                ParametListTest(1, 2, 3, 3, 3, 3, -1);
                std::cout << "----------------------------" << std::endl;
                TParametListTest(1, 2, 3, 3, 3, 3);  // 采用1X可變模版參數語法實現的,可以抹掉末尾的結束標記

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

            2017年4月1日 #

            #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 閱讀(337) | 評論 (0)編輯 收藏

            僅列出標題  下一頁
            久久国产乱子伦精品免费午夜| 精品久久人人妻人人做精品| 精品无码人妻久久久久久| 无遮挡粉嫩小泬久久久久久久| 日产精品久久久久久久性色| 久久影院综合精品| 一本一本久久A久久综合精品 | 久久精品国产清自在天天线| 93精91精品国产综合久久香蕉| 国产日韩久久免费影院| 亚洲综合熟女久久久30p| 中文字幕久久亚洲一区| 国产美女久久精品香蕉69| 婷婷久久综合九色综合绿巨人| 少妇精品久久久一区二区三区 | 欧美一区二区三区久久综| 久久精品国产精品亚洲精品| 久久久无码一区二区三区| 欧美激情精品久久久久久| 久久99热狠狠色精品一区| 国产精品久久久久久久久久影院| 女人香蕉久久**毛片精品| 日本欧美久久久久免费播放网 | 精品国产热久久久福利| 欧洲国产伦久久久久久久| 97视频久久久| 91精品国产91久久| 久久人与动人物a级毛片| 久久久久99精品成人片直播| 国产伊人久久| 日产精品久久久久久久性色| 国产精品嫩草影院久久| 久久亚洲精品无码VA大香大香| 精品久久久久久国产潘金莲| 久久久久亚洲爆乳少妇无| 亚洲色欲久久久综合网东京热| 久久福利青草精品资源站| 久久久久亚洲av毛片大| 97久久久精品综合88久久| 久久狠狠高潮亚洲精品| 欧美日韩精品久久久久|