[so] assert

Alin Popescu alinpopescu at live.com
Sat Jun 20 21:50:36 EEST 2009


On Sat, 20 Jun 2009 21:44:06 +0300, Alexandru Moșoi <brtzsnr at gmail.com>  
wrote:

> Pe 20 iunie 2009, 21:41, Alin Popescu<alinpopescu at live.com> a scris:
>> Salut
>>
>> Nu am inteles un lucru. Care ar fii diferenta intre urmatoarele doua
>> abordari:
>>
>> char *m = malloc(125);
>> if (m == 0)
>>        exit(0);
>>
>>
>> si
>>
>>
>> char *m = malloc(125);
>> assert(m != 0);
>
>
> assert poate fi dezactivat print definierea macroului NDEBUG la
> compilare. if-ul nu poate fi.
>
>

So, my point is, la temele la so era absolut nevoie sa verificam in  
'release' toate codurile de eroare? Banuiesc ca raspunsul
va fii DA!. Este o intrebare semi-retorica.

Din cate imi amintesc, assert nu incetineste aplicatia finala, pentru ca  
este scos odata ce aplicatia este compilata ca release.
If-ul inseamna hazard de control, sageata albastra de la dreapta la stanga  
din cartea lui Patterson, a dus la branch prediction si multe complicatii.


More information about the so mailing list