?
Das Problem ist ja, dass beim Nichtbeachten das Programm eben nicht abstürzt. Zumindest nicht später: Wenn zum Beispiel irgendeine Grafikfunktion nicht klappt, dann ist da einfach ein Sprite weniger auf dem Bildschirm.
Um das ganze abzufangen und das nicht jedesmal hinschreiben zu müssen, müsste ich wohl sowas wie eine statische Klasse erstellen:
class WinApi
{
public:
static void BeliebigeFunktion(int a, int b)
{
int returnValue = ::BeliebigeFunktion(a, b);
if (returnValue == 0)
throw WinApiException("void Beliebige", returnValue);
}
// Andere Funktionen
}
Und dann könnte ich um das ganze Programm ein try-catch machen. Denn wenn eine Funktion aufgrund dieser internen Windows-Querelen fehlschlägt, gibt es für ein Spiel sowieso keine sinnvolle Aktion, die ausgeführt werden kann, außer es zu beenden. (Es sei denn, ihr habt eine alternative Idee.)
Wie wird das eigentlich in der Praxis gemacht? Wird da der ganze Quellcode mit solchen Abfragen vollgestopft? Vor allem: Schlägt sowas auch wirklich in der Praxis fehl oder ist das mehr eine theoretische Sache, die heutztage vernachlässigt werden kann?