с Луа думаю подавляющее большинство знакомы, и наверняка пользовались луа-биндером
как ПРАВИЛЬНО собрать бинд-либу?
добавил в решение новый проект, в его свойствах выбрал "не использовать предскомпилированные хедеры", запихнул все файлы из "src" луабинда в "файлы исходного кода", компилю и вылетают варнинги (в дебаг-версии) типа "
luabind::default_converter<lua_State *>::consumed_args: функция скомпилирована как машинная: varargs не поддерживаются в /clr"
без ошибок!) но все же варнинги это не гуд)))
ок, дальше:
добавляю в зависимости главного проекта созданную либу, включаю нужные хедеры, пишу тестовый код:
#include <lua.hpp>
#include <luabind/luabind.hpp>
Handle CreateBackground(){
блаблабла
return background;
}
lua_State* L = lua_open();
luaL_openlibs(L);
luabind::open(L);
luabind::module(L)
[
luabind::def("CreateBackground", &CreateBackground)
];
luaL_dofile(L, "sc.txt");
lua_close(L);
при компиляции опять варнинги типа "
warning LNK4248: неразрешенная лексема TypeRef (01000012) для "lua_State"; образ нельзя запустить"
но к большому моему удивлению все работает)))
как исправить варнинги? как обеспечить 100-процентную работоспособность?
и еще: было бы хорошо строить не статическую а динамическую либу, ибо компиляция основного проекта сильно замедлилось
можно так?
UPD: можно как нить сделать так:
class A{
int val;
};
class B{
A * a;
};
&B::a::val; <-получить адрес члена обьекта члена обьекта? можно как-то сделать? %-)