我想在導入類時使用Luabind的屬性。該定義是正確的,這個我相信,但是當我呼籲的屬性,例如,如果它是一個字符串或數字將其打印出來,我得到這樣的事情如何讓Luabind屬性起作用?
功能:009EC440
現在我不知道爲什麼會發生這種情況,但是我在互聯網上四下張望,發現幾個人有同樣的問題。他們說,你應該建立Luabind與這些參數:
的bjam工具集= MSVC 9.0變異=調試線程=多鏈接=共享定義= _BIND_TO_CURRENT_VCLIBS_VERSION
現在,我已經試過了,但我仍然得到同樣的錯誤。還有一點需要注意的是,我使用的是MSVC 2012,所以我試圖用toolset = msvc-11.0來構建它,但是仍然無濟於事。如果您不使用Boost構建來構建您的項目,我已經閱讀過您需要定義LUABIND_DYNAMIC_LINK的信息,這也是我在包含Luabind之前完成的。這仍然導致了這個錯誤。我也試圖自己構建Luabind,但遇到了連接它的麻煩,因爲它引發了許多符號錯誤(我不確定在哪裏定義LUABIND_DYNAMIC_LINK,所以如果有人知道這可能會解決問題)。有誰知道如何解決這個問題?
下面是聲明的屬性代碼:像這樣被訪問
luabind::module(luaState)[
luabind::class_<Weapon>("Weapon")
.def(luabind::constructor<float, float>())
.def_readwrite("onFire", &Weapon::onFireFunc)
.def_readonly("modifier", &Weapon::modifier)
];
他們正在嘗試,用的武器是因爲它的構造函數聲明的武器類的一個實例:
print(weapon.modifier)
weapon.onFire = onFire
靜態鏈接的作品,但我想,使其與動態鏈接工作,全光照克這些參數:
的bjam工具集= MSVC-9.0變體=調試線程=多連桿=靜態限定= _BIND_TO_CURRENT_VCLIBS_VERSION