Ich will bis zum 4. param der folgenden Funktion NULL übergeben:Wie soll ich NULL an den Funktionsparameter va_list übergeben?
Bool CCMenuItemToggle :: initWithTarget (CCObject * Ziel, SEL_MenuHandler Selektor, CCMenuItem * Artikel, va_list args);
wie folgt aus:
CCMenuItemToggle::initWithTarget(this, menu_selector(GOSound::toggleButtonCallback), NULL, NULL);
Es ist in Ordnung, wenn ich es in XCode (clang3.1) bauen. Aber wenn ich Port der Code auf Android NDK (g ++ 4.7), um es zu kompilieren fehlschlägt:
no viable conversion from 'int' to 'va_list' (aka '__builtin_va_list')
Wie soll ich damit umgehen?
Ich habe gerade festgestellt, dass ich Ihre Lösung mit ndk (clang3.1) getestet habe. Wenn ich zurück zu ndk (g ++ 4.7) wechsle, meldet es Fehler: 'interner Compilerfehler: in build_zero_init_1, bei cp/init.c: 280' – smilingpoplar
Gut denke ich nicht, dass ich dafür verantwortlich bin. Die Antwort ist immer noch richtig. Der Compiler ist defekt. Vielleicht hilft es, vor dem Aufruf eine Variable zu deklarieren und die Variable zu übergeben. Siehe oben Bearbeiten. – Thomas
Cool, die spätere Problemumgehung funktioniert für beide Compiler. : D – smilingpoplar