• <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>

            戰魂小筑

            討論群:309800774 知乎關注:http://zhihu.com/people/sunicdavy 開源項目:https://github.com/davyxu

               :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
              257 隨筆 :: 0 文章 :: 506 評論 :: 0 Trackbacks

            在lua中, #操作符用于獲取對象大小, 對于table來說, 獲取的是table元素個數, 對于字符串來說獲取的是字符串長度

            另外一種獲取方法是table.getn(obj), 但是這個方法已經標記為廢除了, 盡量使用通用且簡潔的#操作符

             

            使用lua api實現此功能就需要用到lua_objlen( ),但是這個功能未在luabind中提供.所以我們順手添加一個

            首先找到luabind源碼的object.hpp中取對象類型的type函數,在其下添加以下代碼

             

              1: template<class ValueWrapper>
              2: inline int obj_size(ValueWrapper const& value)
              3: {
              4:     lua_State* interpreter = value_wrapper_traits<ValueWrapper>::interpreter(
              5:         value
              6:         );
              7: 
              8:     value_wrapper_traits<ValueWrapper>::unwrap(interpreter, value);
              9:     detail::stack_pop pop(interpreter, 1);
             10:     return lua_objlen(interpreter, -1);
             11: }

             

            重新編譯你的代碼, 就可以這樣使用luabind::obj_size( obj ) 獲取對象大小了
            posted on 2012-03-27 17:36 戰魂小筑 閱讀(1871) 評論(0)  編輯 收藏 引用 所屬分類: 腳本技術C++/ 編程語言
            久久超乳爆乳中文字幕| 欧美无乱码久久久免费午夜一区二区三区中文字幕| 精品国产乱码久久久久久人妻| 久久精品国产免费| 久久精品99久久香蕉国产色戒 | 日日躁夜夜躁狠狠久久AV| 精品久久无码中文字幕| 精品无码久久久久国产| 久久久久亚洲爆乳少妇无| 久久久噜噜噜久久中文字幕色伊伊 | 亚洲国产成人乱码精品女人久久久不卡| 色综合久久中文字幕综合网| 久久久久人妻精品一区| 无码人妻久久一区二区三区蜜桃| 久久精品蜜芽亚洲国产AV| 久久亚洲中文字幕精品一区| 色综合久久无码五十路人妻| 久久精品成人免费国产片小草| 久久亚洲日韩精品一区二区三区 | 久久久久久久亚洲Av无码| 久久精品综合一区二区三区| 欧美熟妇另类久久久久久不卡 | 热99re久久国超精品首页| 亚洲乱码中文字幕久久孕妇黑人 | 国产精品日韩欧美久久综合| 久久婷婷五月综合色高清| 亚洲人成无码久久电影网站| 国产AⅤ精品一区二区三区久久| 少妇久久久久久久久久| 久久SE精品一区二区| 欧洲性大片xxxxx久久久| 久久久精品人妻无码专区不卡| 欧美久久综合性欧美| 久久99国产精一区二区三区 | 国产精品久久波多野结衣| 久久99国产综合精品免费| 精品国产青草久久久久福利| 精品久久久一二三区| 亚洲欧洲久久av| 东方aⅴ免费观看久久av| 一本久久a久久精品vr综合|