Ich portiere eine Windows-Bibliothek auf Android (mit der GNU Standard C++ Library Option, libstdc++-v3) und es scheint zahlreiche Namensunterschiede zwischen den VC- und GNU-Bibliotheken zu geben, z.B.:
_stricmp
heißtstrcasecmp
stattdessen_unlink
heißtunlink
_scalb
heißtscalbn
_finite
heißtisfinite
_isnan
heißtisnan
_itoa
yitoa
scheinen in GNU C++ nicht zu existierenatoi
gibt es zwar, aber nichtatoi64
Die Dokumentation sowohl der VC- als auch der GNU-Bibliotheken impliziert, dass sie "ISO"-C++ implementieren. Ich kann zum Beispiel einige Warnungen von VC2008 erhalten, wenn ich keine "ISO C++"-Namen verwende, wie zum Beispiel diese: "Warnung C4996: 'itoa': Der POSIX-Name für dieses Element ist veraltet. Verwenden Sie stattdessen den ISO C++-konformen Namen: _itoa." Ähnlich heißt es im GNU-Handbuch: "The GNU Standard C++ Library v3 is an ongoing project to implement the ISO 14882 Standard C++ library".
Wie kommt es also dazu, dass die Bibliotheken diese unterschiedlichen Namen tragen? Woran kann ich erkennen, welche Namen eher "Standard" sind?
Gibt es außerdem eine Index von libstdc++-v3, d.h. eine einfache Liste aller Funktionen in der Bibliothek? Ich kann nur eine Handbuch und die " Quellendokumentation ", die keine Liste von Funktionen zu bieten scheint.