#define kontra const, a wydajność?
Ostatnio zmodyfikowano 2009-07-13 00:20
GoldWolf Temat założony przez niniejszego użytkownika  | 
#define kontra const, a wydajność? » 2009-07-12 21:00:46 Chciałbym zapytać, dlaczego w C++ poleca się stosować const niż #define, jakie aspekty za tym przemawiają(korzyści, wady)?  | 
 | 
GoldWolf Temat założony przez niniejszego użytkownika  | 
» 2009-07-12 21:18:11 Słyszałem iż w pewnych warunkach #define może zmienić rozmiar zajętej pamięci?  | 
 | 
WinerFresh  | 
» 2009-07-12 21:25:23 Może np. dla tego, że debugger może ci wtedy pomóc?? Jak korzystasz z define i zrobisz gdzieś kuku to ci (...) na głowie wyrośnie zanim znajdziesz debuggerem ten błąd, jedyny sposób na jego rozwiązanie to prawo Linusa.  | 
 | 
pompom  | 
» 2009-07-12 23:28:59 //tja. "elfowie". W necie nie każdy musi być człowiekiem. Znam konia nawet... //Fanael
  Yyy. Furry znaczy?  | 
 | 
pompom  | 
» 2009-07-12 23:50:55  Słyszałem iż w pewnych warunkach #define może zmienić rozmiar zajętej pamięci?
 
 Chyba chodziło oto, że: Da kod w którym 23 będzie zapisany w kodzie, a kod z constem umieści zmienną w pamięci na stałe + da instrukcję pobrania wartości (albo bezpośredniego wrzucenia - optymalizacja), więc zajmie więcej pamięci. Ale takie różnice są pomijalne, trzeba używać consta. Define używa się do rzeczy typu #ifdef DEBUG .. #endif gdzie DEBUG jest definiowane z poziomu kompilacji albo w jakimś pliku konfiguracyjnym, oraz do makr omijających niedoróbki języka (boost ma ich trochę).  | 
 | 
WinerFresh  | 
» 2009-07-13 00:18:47 zgadzam się z przedmówcą, nawet jeden taki znam :)  | 
 | 
WinerFresh  | 
» 2009-07-13 00:23:11 Tiaaa, D + Tango nie ma sobie równych.  | 
 | 
pompom  | 
» 2009-07-13 00:31:30 Każdy język ma swoje dobre strony i swoje główne zastosowanie, idealnego nie ma i nie będzie... C/C++ nadaje się do gier i naprawdę niskopoziomowych rzeczy. A dlaczego tyle ludzi chce się go uczyć? Bo jest naprawdę wszędzie i jeszcze długo będzie z nim robota (stary soft).  | 
 | 
|  « 1 »  2 |