2008-11-06 6 views
7

Sto refactoring del codice MFC che è pieno di istruzioni ASSERT e, in preparazione per una porta Linux futura, desidero sostituirli con lo standard assert. Ci sono delle differenze significative tra le due implementazioni che la gente sa che potrebbe mordermi sul didietro?ASSERT vs. ATLASSERT vs. assert

Analogamente, ho anche trovato un codice che utilizza ATLASSERT che vorrei anche sostituire.

risposta

4

No. La versione MFC include solo un punto di interruzione facile da eseguire.

2

Sostituirli con your own assertion macro. Ecco come si ottiene il massimo beneficio (registrazione, traccia stack, ecc.)

1

Si consiglia di utilizzare la propria macro o # define per la compilazione linux. Non vi è alcun motivo valido per rinunciare a qualsiasi ulteriore utilità sul lato Windows (ad esempio, il punto di interruzione integrato), e nessun motivo valido per modificare un sacco di codice quando sarà sufficiente una semplice compatibilità # define.