Lua'da kullandığım bir kitaplıktan bir sınıf sarmayı deniyorum. Özellikle, renk sınıfını SFML'den kaydırmaya çalışıyorum. Renk sınıfı için tam kaynak here ve here görülebilir. Yeni işle ilgili çağrı için eşleme işlevi yok
Bu
.int SFColor_new(lua_State* L)
{
// omitting part where I set r, g, b, and a
new (lua_newuserdata(L, sizeof(Color))) Color(r, g, b, a); // Line 47
luaL_getmetatable(L, LuaInfo<Color>::myMetaTableName);
lua_setmetatable(L, -2);
return 1;
}
ben başaramıyorum işte fonksiyonudur Ve bu hata
LuaSFMLColor.cpp: In function ‘int ag::SFColor_new(lua_State*)’:
LuaSFMLColor.cpp:47: error: no matching function for call to ‘operator new(unsigned int, void*)’
<built-in>:0: note: candidates are: void* operator new(unsigned int)
make: *** [game] Error 1
olduğunu yapmam bu hatayla olmadan birkaç başka yerlerde benzer şeyler bu yüzden ona neyin sebep olacağından emin değilim. Colour'un kaynak koduna bakarak garip veya sıradan bir şey görmüyorum ve fikirlerden kaçtım. Ayrıca varsayılan yapıcıyı (yani argümanlar) kullanmayı denedim ve daha sonra değeri daha sonra ayarladım, ama bu da iyi bir şey yapmadı.
Bu Lua ile ilgili değildir. – lhf
O zamanlar bunu bilmiyordum. : P – Alex