2013-04-05 12 views
11

Który kompilator C++ może skompilować następny kod?Który kompilator jest obsługiwany za pomocą wskaźnika funkcji z domyślnymi argumentami?

void (*G2API_CopyGhoul2Instance)(CGhoul2Info_v &ghoul2From, 
           CGhoul2Info_v &ghoul2To, 
           int modelIndex = -1); //<--- That's it! 

To nie jest mój kod i mam wiele takich rzeczy. Wiem, że standard nie pozwalał na taką deklarację, ale komentarz this mówi mi, że niektóre kompilatory na to pozwalają.

P.S. Ten kod pochodzi ze źródła Star Wars Jedi Knight: Jedi Academy.

+0

/. +1 wnikliwe. –

+1

Wygląda to na coś, co zrobimy dzisiaj z 'std :: function/std :: bind'. Alternatywnie jest łatwo zawinięty w niestandardowy funktor, a 'operator()' może mieć domyślne parametry. – MSalters

Odpowiedz

3

Nie mogę zasugerować kompilatora, chociaż znalazłem przydatne łącze, które zawiera listę poprawek wymaganych do kodu, aby pomyślnie skompilować go z kompilatorem GCC.

http://www.lucasforums.com/showthread.php?t=203922

nadzieję, że jest przydatna.

+0

Wielkie dzięki, ale nie ma odpowiedzi na moje problemy z tym łączem. Jak rozumiem, próbowali skompilować jakiś zestaw rozwojowy dla JKA. W moim przypadku to nie SDK, to cała JKA (prawie cała). – Avega

Powiązane problemy