082

082



Język C++ - praktyczne wskazówki

Po

class Napis { private:

const int m_cchTest; int m_cch; char *m_pch; public:

Napis(void): m_cch(0), m_cchTest(10), m_pch(NULL)

{

}

};

Zmienne można inicjalizować albo wewnątrz konstruktora albo za pomocą listy inicjalizacyjnej. Użycie takiej listy jest bardziej wydajne podczas inicjalizowania typów niewbudowanych. Gdy inicjalizujemy zmienne wewnątrz konstruktora, wówczas najpierw zostają przeprowadzone domyślne przypisania zmiennych, a dopiero potem przypisania wskazane w konstruktorze. W wypadku inicjalizowania za pomocą listy są używane tylko podane wartości, dzięki czemu unika się podwójnego przypisywania.

Inicjalizacji z użyciem wyrażeń, można dokonać tylko wewnątrz konstruktora tak jak w kodzie:

m_cch = globWspBitowy * 44000 / fazaKsiężyca;    ~

Przykład: klasa String w pliku String.cpp


Nieinicjalizowanie stałych wewnątrz konstruktora

kompilowanie kodu

Przed

class Napis { private:

const int m_cchTest; public:

Napis(void)

{

m_cchTest = 10;

}

};


Wyszukiwarka

Podobne podstrony:
~Napis(void){ if(m_pch) delete m_pch;} }; Po class Napis{ private: const int m_cchTest; int
Po class Napis{ private: const int m_cchTest; int m_cch; char *m_pch; void lnicjNapis(const cha
KlasyPo class Napis { private: const int m_cchTest; public: Napis(void) : m_cchTest(10){}}; Zgodnie
080 TIF Język C++ - praktyczne wskazówki Ten rozdział i pięć następnych wiąże się z programowaniem o
084 TIF Język C++ - praktyczne wskazówki Język C++ - praktyczne wskazówkiPrzydzielanie pamięci dla s
Po class Uwaga { private: int m_nLicznik; public: Uwaga(void) : m_nLicznik(1){} void UstawLicznik(in
skanuj0123 (16) ustnej: język ślizga się po powierzchni siekaczy, dziąseł, podniebienia twardego moż

więcej podobnych podstron