2013-02-01 29 views
7

我想使用帶有超過10個參數的函數與luabind,但我得到一些C2784和C2780編譯器錯誤(VS2012 Express)。
看來問題是使用的boost庫的限制。在luabind中,可以設置LUABIND_MAX_ARITY選項,但它取決於boost所能實現的功能。我怎麼能克服這個限制?luabind - 具有超過10個參數的函數

謝謝!

代碼:

luabind::module(lua) [ 
    luabind::class_<WkmParserDB>("WkmParserDB") 
     .def("insertInterface", &WkmParserDB::insertInterface) 
     .def("insertIntfStats", &WkmParserDB::insertIntfStats) 
     .def("intertIntfN1k", &WkmParserDB::intertIntfN1k) 
]; 

功能insertIntfStats大約有20的std :: string參數,僅此而已。其他兩個函數的參數少於8個(也是std :: string)。當我註釋行「.def(」insertIntfStats「,& WkmParserDB :: insertIntfStats)」它編譯和工作。

錯誤:

Fehler 3 error C2784: "boost::mpl::vector12<R,const most_derived<T,Wrapped>::type&,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3,A4,A5,A6,A7,A8,A9) const,Wrapped *)": template-Argument für "R (__thiscall T::*)(A0,A1,A2,A3,A4,A5,A6,A7,A8,A9) const" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 4 error C2780: 'boost::mpl::vector12<R,const T&,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3,A4,A5,A6,A7,A8,A9) const)': Erwartet 1 Argumente - 2 unterstützt d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 5 error C2784: "boost::mpl::vector12<R,most_derived<T,Wrapped>::type&,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3,A4,A5,A6,A7,A8,A9),Wrapped *)": template-Argument für "R (__thiscall T::*)(A0,A1,A2,A3,A4,A5,A6,A7,A8,A9)" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 6 error C2780: 'boost::mpl::vector12<R,T&,A0,A1,A2,A3,A4,A5,A6,A7,A8,A9> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3,A4,A5,A6,A7,A8,A9))': Erwartet 1 Argumente - 2 unterstützt d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 7 error C2784: "boost::mpl::vector11<T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10> luabind::detail::deduce_signature(R (__cdecl *)(A0,A1,A2,A3,A4,A5,A6,A7,A8,A9),...)": template-Argument für "R (__cdecl *)(A0,A1,A2,A3,A4,A5,A6,A7,A8,A9)" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 8 error C2784: "boost::mpl::vector11<R,const most_derived<T,Wrapped>::type&,A0,A1,A2,A3,A4,A5,A6,A7,A8> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3,A4,A5,A6,A7,A8) const,Wrapped *)": template-Argument für "R (__thiscall T::*)(A0,A1,A2,A3,A4,A5,A6,A7,A8) const" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 9 error C2780: 'boost::mpl::vector11<R,const T&,A0,A1,A2,A3,A4,A5,A6,A7,A8> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3,A4,A5,A6,A7,A8) const)': Erwartet 1 Argumente - 2 unterstützt d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 10 error C2784: "boost::mpl::vector11<R,most_derived<T,Wrapped>::type&,A0,A1,A2,A3,A4,A5,A6,A7,A8> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3,A4,A5,A6,A7,A8),Wrapped *)": template-Argument für "R (__thiscall T::*)(A0,A1,A2,A3,A4,A5,A6,A7,A8)" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 11 error C2780: 'boost::mpl::vector11<R,T&,A0,A1,A2,A3,A4,A5,A6,A7,A8> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3,A4,A5,A6,A7,A8))': Erwartet 1 Argumente - 2 unterstützt d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 12 error C2784: "boost::mpl::vector10<T0,T1,T2,T3,T4,T5,T6,T7,T8,T9> luabind::detail::deduce_signature(R (__cdecl *)(A0,A1,A2,A3,A4,A5,A6,A7,A8),...)": template-Argument für "R (__cdecl *)(A0,A1,A2,A3,A4,A5,A6,A7,A8)" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 13 error C2784: "boost::mpl::vector10<R,const most_derived<T,Wrapped>::type&,A0,A1,A2,A3,A4,A5,A6,A7> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3,A4,A5,A6,A7) const,Wrapped *)": template-Argument für "R (__thiscall T::*)(A0,A1,A2,A3,A4,A5,A6,A7) const" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 14 error C2780: 'boost::mpl::vector10<R,const T&,A0,A1,A2,A3,A4,A5,A6,A7> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3,A4,A5,A6,A7) const)': Erwartet 1 Argumente - 2 unterstützt d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 15 error C2784: "boost::mpl::vector10<R,most_derived<T,Wrapped>::type&,A0,A1,A2,A3,A4,A5,A6,A7> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3,A4,A5,A6,A7),Wrapped *)": template-Argument für "R (__thiscall T::*)(A0,A1,A2,A3,A4,A5,A6,A7)" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 16 error C2780: 'boost::mpl::vector10<R,T&,A0,A1,A2,A3,A4,A5,A6,A7> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3,A4,A5,A6,A7))': Erwartet 1 Argumente - 2 unterstützt d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 17 error C2784: "boost::mpl::vector9<T0,T1,T2,T3,T4,T5,T6,T7,T8> luabind::detail::deduce_signature(R (__cdecl *)(A0,A1,A2,A3,A4,A5,A6,A7),...)": template-Argument für "R (__cdecl *)(A0,A1,A2,A3,A4,A5,A6,A7)" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 18 error C2784: "boost::mpl::vector9<R,const most_derived<T,Wrapped>::type&,A0,A1,A2,A3,A4,A5,A6> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3,A4,A5,A6) const,Wrapped *)": template-Argument für "R (__thiscall T::*)(A0,A1,A2,A3,A4,A5,A6) const" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 19 error C2780: 'boost::mpl::vector9<R,const T&,A0,A1,A2,A3,A4,A5,A6> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3,A4,A5,A6) const)': Erwartet 1 Argumente - 2 unterstützt d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 20 error C2784: "boost::mpl::vector9<R,most_derived<T,Wrapped>::type&,A0,A1,A2,A3,A4,A5,A6> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3,A4,A5,A6),Wrapped *)": template-Argument für "R (__thiscall T::*)(A0,A1,A2,A3,A4,A5,A6)" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 21 error C2780: 'boost::mpl::vector9<R,T&,A0,A1,A2,A3,A4,A5,A6> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3,A4,A5,A6))': Erwartet 1 Argumente - 2 unterstützt d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 22 error C2784: "boost::mpl::vector8<T0,T1,T2,T3,T4,T5,T6,T7> luabind::detail::deduce_signature(R (__cdecl *)(A0,A1,A2,A3,A4,A5,A6),...)": template-Argument für "R (__cdecl *)(A0,A1,A2,A3,A4,A5,A6)" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 23 error C2784: "boost::mpl::vector8<R,const most_derived<T,Wrapped>::type&,A0,A1,A2,A3,A4,A5> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3,A4,A5) const,Wrapped *)": template-Argument für "R (__thiscall T::*)(A0,A1,A2,A3,A4,A5) const" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 24 error C2780: 'boost::mpl::vector8<R,const T&,A0,A1,A2,A3,A4,A5> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3,A4,A5) const)': Erwartet 1 Argumente - 2 unterstützt d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 25 error C2784: "boost::mpl::vector8<R,most_derived<T,Wrapped>::type&,A0,A1,A2,A3,A4,A5> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3,A4,A5),Wrapped *)": template-Argument für "R (__thiscall T::*)(A0,A1,A2,A3,A4,A5)" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 26 error C2780: 'boost::mpl::vector8<R,T&,A0,A1,A2,A3,A4,A5> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3,A4,A5))': Erwartet 1 Argumente - 2 unterstützt d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 27 error C2784: "boost::mpl::vector7<T0,T1,T2,T3,T4,T5,T6> luabind::detail::deduce_signature(R (__cdecl *)(A0,A1,A2,A3,A4,A5),...)": template-Argument für "R (__cdecl *)(A0,A1,A2,A3,A4,A5)" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 28 error C2784: "boost::mpl::vector7<R,const most_derived<T,Wrapped>::type&,A0,A1,A2,A3,A4> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3,A4) const,Wrapped *)": template-Argument für "R (__thiscall T::*)(A0,A1,A2,A3,A4) const" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 29 error C2780: 'boost::mpl::vector7<R,const T&,A0,A1,A2,A3,A4> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3,A4) const)': Erwartet 1 Argumente - 2 unterstützt d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 30 error C2784: "boost::mpl::vector7<R,most_derived<T,Wrapped>::type&,A0,A1,A2,A3,A4> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3,A4),Wrapped *)": template-Argument für "R (__thiscall T::*)(A0,A1,A2,A3,A4)" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 31 error C2780: 'boost::mpl::vector7<R,T&,A0,A1,A2,A3,A4> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3,A4))': Erwartet 1 Argumente - 2 unterstützt d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 32 error C2784: "boost::mpl::vector6<T0,T1,T2,T3,T4,T5> luabind::detail::deduce_signature(R (__cdecl *)(A0,A1,A2,A3,A4),...)": template-Argument für "R (__cdecl *)(A0,A1,A2,A3,A4)" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 33 error C2784: "boost::mpl::vector6<R,const most_derived<T,Wrapped>::type&,A0,A1,A2,A3> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3) const,Wrapped *)": template-Argument für "R (__thiscall T::*)(A0,A1,A2,A3) const" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 34 error C2780: 'boost::mpl::vector6<R,const T&,A0,A1,A2,A3> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3) const)': Erwartet 1 Argumente - 2 unterstützt d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 35 error C2784: "boost::mpl::vector6<R,most_derived<T,Wrapped>::type&,A0,A1,A2,A3> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3),Wrapped *)": template-Argument für "R (__thiscall T::*)(A0,A1,A2,A3)" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 36 error C2780: 'boost::mpl::vector6<R,T&,A0,A1,A2,A3> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2,A3))': Erwartet 1 Argumente - 2 unterstützt d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 37 error C2784: "boost::mpl::vector5<T0,T1,T2,T3,T4> luabind::detail::deduce_signature(R (__cdecl *)(A0,A1,A2,A3),...)": template-Argument für "R (__cdecl *)(A0,A1,A2,A3)" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 38 error C2784: "boost::mpl::vector5<R,const most_derived<T,Wrapped>::type&,A0,A1,A2> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2) const,Wrapped *)": template-Argument für "R (__thiscall T::*)(A0,A1,A2) const" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 39 error C2780: 'boost::mpl::vector5<R,const T&,A0,A1,A2> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2) const)': Erwartet 1 Argumente - 2 unterstützt d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 40 error C2784: "boost::mpl::vector5<R,most_derived<T,Wrapped>::type&,A0,A1,A2> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2),Wrapped *)": template-Argument für "R (__thiscall T::*)(A0,A1,A2)" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 41 error C2780: 'boost::mpl::vector5<R,T&,A0,A1,A2> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1,A2))': Erwartet 1 Argumente - 2 unterstützt d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 42 error C2784: "boost::mpl::vector4<T0,T1,T2,T3> luabind::detail::deduce_signature(R (__cdecl *)(A0,A1,A2),...)": template-Argument für "R (__cdecl *)(A0,A1,A2)" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 43 error C2784: "boost::mpl::vector4<R,const most_derived<T,Wrapped>::type&,A0,A1> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1) const,Wrapped *)": template-Argument für "R (__thiscall T::*)(A0,A1) const" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 44 error C2780: 'boost::mpl::vector4<R,const T&,A0,A1> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1) const)': Erwartet 1 Argumente - 2 unterstützt d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 45 error C2784: "boost::mpl::vector4<R,most_derived<T,Wrapped>::type&,A0,A1> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1),Wrapped *)": template-Argument für "R (__thiscall T::*)(A0,A1)" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 46 error C2780: 'boost::mpl::vector4<R,T&,A0,A1> luabind::detail::deduce_signature(R (__thiscall T::*)(A0,A1))': Erwartet 1 Argumente - 2 unterstützt d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 47 error C2784: "boost::mpl::vector3<T0,T1,T2> luabind::detail::deduce_signature(R (__cdecl *)(A0,A1),...)": template-Argument für "R (__cdecl *)(A0,A1)" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 48 error C2784: "boost::mpl::vector3<R,const most_derived<T,Wrapped>::type&,A0> luabind::detail::deduce_signature(R (__thiscall T::*)(A0) const,Wrapped *)": template-Argument für "R (__thiscall T::*)(A0) const" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 49 error C2780: 'boost::mpl::vector3<R,const T&,A0> luabind::detail::deduce_signature(R (__thiscall T::*)(A0) const)': Erwartet 1 Argumente - 2 unterstützt d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 50 error C2784: "boost::mpl::vector3<R,most_derived<T,Wrapped>::type&,A0> luabind::detail::deduce_signature(R (__thiscall T::*)(A0),Wrapped *)": template-Argument für "R (__thiscall T::*)(A0)" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 51 error C2780: 'boost::mpl::vector3<R,T&,A0> luabind::detail::deduce_signature(R (__thiscall T::*)(A0))': Erwartet 1 Argumente - 2 unterstützt d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 52 error C2784: "boost::mpl::vector2<T0,T1> luabind::detail::deduce_signature(R (__cdecl *)(A0),...)": template-Argument für "R (__cdecl *)(A0)" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 53 error C2784: "boost::mpl::vector2<R,const most_derived<T,Wrapped>::type&> luabind::detail::deduce_signature(R (__thiscall T::*)(void) const,Wrapped *)": template-Argument für "R (__thiscall T::*)(void) const" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 54 error C2780: 'boost::mpl::vector2<R,const T&> luabind::detail::deduce_signature(R (__thiscall T::*)(void) const)': Erwartet 1 Argumente - 2 unterstützt d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 55 error C2784: "boost::mpl::vector2<R,most_derived<T,Wrapped>::type&> luabind::detail::deduce_signature(R (__thiscall T::*)(void),Wrapped *)": template-Argument für "R (__thiscall T::*)(void)" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 56 error C2780: 'boost::mpl::vector2<R,T&> luabind::detail::deduce_signature(R (__thiscall T::*)(void))': Erwartet 1 Argumente - 2 unterstützt d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 57 error C2784: "boost::mpl::vector1<T0> luabind::detail::deduce_signature(R (__cdecl *)(void),...)": template-Argument für "R (__cdecl *)(void)" konnte nicht von "std::basic_string<_Elem,_Traits,_Alloc> " hergeleitet werden. d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
Fehler 58 error C2780: 'luabind::adl::object luabind::make_function(lua_State *,F)': Erwartet 2 Argumente - 4 unterstützt d:\programmieren\luabind-0.9.1\luabind\class.hpp 311 1 wktools4 
+0

您應該在您的問題中包含您的所有錯誤(完整和未經編輯)以及一些相關代碼。 –

+0

@Joachim Pileborg:完成 – mspoerr

+1

您是否嘗試將BOOST_MPL_LIMIT_VECTOR_SIZE設置爲更大的內容?缺省值是20. – jmetcalfe

回答

2

雖然這是一個問題,更大的問題是,你有一個函數,需要超過10個參數!

你需要做的是看看簡化這個函數的接口,可能是將參數引入結構或類(或者Lua中的字典,我認爲)。

0

嘗試使用單個表格作爲參數。

void MyFunction (luabind::adl::object const & theTable) 
{ 
    if(luabind::type(theTable) == LUA_TTABLE) 
    { 
     // Iterate or look for specific indexes by name or number. 
     // Follow convention. 
    } 
} 

該系統還可以讓您擁有可選參數,從而允許您以不同的變化形式調用此函數,而無需重新編寫它。