1

すべて。luabindを使用してluaスクリプトから配列を読み取ると、奇妙な問題が発生しました。

luaスクリプトは次のようになります。

root = 
{
        id = 1,
        id = 2,
        id = 3
};

c++コードは次のようになります。luabind::objectdata_root = luabind :: globals(L)["root"];

for (luabind::iterator i(data_root), end; i != end; ++i)
{
    luabind::object data = *i;
    unsigned int id = luabind::object_cast<unsigned int>(data);
    std::cout << "id:" << id << std::endl;
}

出力は次のとおりです。

id:3

[root]のすべての要素を出力したいのですが、最後の1つ以上しか出力しません。

ありがとう、ジェイソン:)

4

1 に答える 1

2

ルートには複数の要素はなく、1つしかありません。キーを3つの異なる値に割り当てましたidが、キーは1回だけ存在し、それに関連付けられた値は1つしかないため、基本的にはとしか言いませんroot = { id = 3 }

于 2011-07-17T13:27:25.147 に答える