return;

}

// Przydziela dodatkowy znak na kończący znak pusty. cchNew = m_cch + cch; pchNew = new char[cchNew + 1];

// Wskazówka 49. if(! pchNew) return;

// Pomyślnie przydzielono nowy bufor, strcpy(pchNew, m_pch);

II Wskazówka 128. strcpy(pchNew+m_cch, pch); if(m_pch)

delete m_pch; m_pch = pchNew; m_cch = cchNew;

void String::ReinitString(const char *pch, int cch)

{

char *pchOld; int cchOld;

if(cch != m_cch)

{

pchOld = m_pch; cchOld = m_cch; lnitString(pch, cch); if(m_pch)

{

// Czy pomyślnie zainicjalizowano napis? Teraz można usunąć pamięć

// starej zmiennej pch, jeśli taka istnieje.

if(pchOld)

delete pchOld;

}

else

{

// Nie udało się przydzielić pamięci dla napisu? Przywracamy stare // wartości. m_pch = pchOld; mech = cchOld;

}