081 TIF

081 TIF



Klasy

~Napis(void)

{

if(m_pch)

delete m_pch;

}

};

Wszystkie zmienne składowe trzeba inicjalizować, tak jak zmienne lokalne. W rzeczywistości inicjalizowanie zmiennych składowych jest nawet ważniejsze, ponieważ zrezygnowanie z tego może znacznie utrudnić odszukanie powodu błędnego działania programu. Zmienne te funkcjonują bowiem „poza” funkcjami. Niezainicjalizowanie zmiennych może spowodować całą gamę różnych błędów i powstanie niepoprawnych wyników. We fragmencie „Przed” nie zainicjowaliśmy wskaźnika pamięci wartością zerową. Jeśli przed nadaniem wskaźnikowi poprawnej wartości zostanie wywołany destruktor, to operacja delete może być przeprowadzona na jakiejś losowej wartości. Alokatory pamięci nie lubią zwalniania nieznanych wskaźników i zwykle zgłaszają to błędnym przerwaniem programu.

Należy wyrobić sobie nawyk inicjalizowania zmiennych składowych w momencie ich definiowania. To pomoże uchronić się przed kłopotami.

Są dwa sposoby inicjalizowania zmiennych składowych. Będą omówione we wskazówce 70., chociaż oba zostały już użyte we właśnie przerobionym przykładzie.

Przykład: klasa String w pliku String.cpp


Listy inicjalizacyjne

pisanie szybkiego kodu

Przed

class Napis { private:

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

Napis(void)

{

m_cch = 0; m_cchTest = 10;

}


Wyszukiwarka

Podobne podstrony:
118 TIF ~Napis(void){ if(m_pch) delete m_pch;} }; Dostęp do konstruktorów można kontrolować zamienia
~Napis(void){ if(m_pch) delete m_pch;} }; Po class Napis{ private: const int m_cchTest; int
068 TIF unikanie nieoczekiwanych wynikówUżywanie deklaracji const *Przed void Napis::lnicjNapis(char
063 TIF $ŁOW::~SŁOW() { if(m_pstrumień) delete m_pstrumieri; } Przed zwolnieniem pamięci należy się
Metodyfunkcje składowe klasy class A{ void fl(){ /* instrukcje */ } int f2(int xf Integer y, B b){ /
SPIS3 TIF 6    Klasy ................................................................
KlasyPo class Napis { private: const int m_cchTest; public: Napis(void) : m_cchTest(10){}}; Zgodnie

więcej podobnych podstron