Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

22.05.2009, 20:43

Release / Debug

moin,
gibt es ein makro für visual studio womit ich abfragen kann ob es die release version oder debug version ist?

z.b.

#ifdef RELEASE
#define "Release"
#else
#define "Debug"
#endif

drakon

Supermoderator

Beiträge: 6 513

Wohnort: Schweiz

Beruf: Entrepreneur

  • Private Nachricht senden

3

22.05.2009, 20:58

Beziehungsweise für Nicht-Debug-Modus:

C-/C++-Quelltext

1
#ifdef NDEBUG

4

22.05.2009, 22:07

ahh danke

5

23.05.2009, 09:54

Zitat von »"Nexus"«

Beziehungsweise für Nicht-Debug-Modus:

C-/C++-Quelltext

1
#ifdef NDEBUG

Weiß nicht ob man das unbedingt braucht, geht doch auch so:

C-/C++-Quelltext

1
2
3
4
5
6
7
#ifdef _DEBUG
// Tue was, z.B.

fullscreen = false;
#else
// Tue was, z.B.

fullscreen = true;
#endif

Databyte

Alter Hase

Beiträge: 1 040

Wohnort: Na zu Hause

Beruf: Student (KIT)

  • Private Nachricht senden

6

23.05.2009, 10:42

Beziehungsweise:

C-/C++-Quelltext

1
2
3
#ifndef _DEBUG
// Code hier

#endif

7

23.05.2009, 10:50

nunja, aber z.B. Boost verlässt sich auch auf NDEBUG und nicht auf _DEBUG. zumindest die Bibliotheken, die ich mir bis jetz angeschaut hab.

Databyte

Alter Hase

Beiträge: 1 040

Wohnort: Na zu Hause

Beruf: Student (KIT)

  • Private Nachricht senden

8

23.05.2009, 10:58

Die Frage die mich gerade mal beschäftigr ist, wiso _DEBUG vorne nen Unterstrich hat und NDEBUG nicht ?

9

23.05.2009, 11:03

Zitat von »"Databyte"«

Die Frage die mich gerade mal beschäftigr ist, wiso _DEBUG vorne nen Unterstrich hat und NDEBUG nicht ?

normalerweise würde das heißen, das _DEBUG implementationsspezifisch ist, jetz hab ich grad mal nachgeguckt, bei der dll, die ich grade mit C::B/MinGw baue, ist laut den Build Options weder _DEBUG im Debugmodus, noch NDEBUG im Releasemodus definiert :?

10

23.05.2009, 14:46

Soviel ich weiss, ist NDEBUG im Gegensatz zu _DEBUG standardisiert und wird zum Beispiel für die Auswertung des assert-Makros in <cassert> verwendet. Ich würde also eher NDEBUG benutzen.

Werbeanzeige