
17.02.2008, 19:23
|
|
Участник форума
Регистрация: 16.06.2007
Сообщений: 107
Провел на форуме: 725870
Репутация:
208
|
|
KEZ, класс писался под мой проект, и там мне надо чтобы возвращало именно char *, поэтому я его и возвращаю. Кому надо спокойно может переделать чтобы возвращало то что ему нужно 
Что тебе не нравится в пустом деструкторе?
Чем напрягает return NULL; это одно и тоже что написать return 0; Все-равно при компиляции компилятор так и сделает, т.к. NULL определен посредством #define в 0 =\
Теперь насчет твоего кода
Код:
Tokenize(const char * Src,const char * Tokens = "|")
{
m_Pos = m_Source = strdup(Src);
m_End = m_Pos+strlen(m_Pos);
mg_Ret = 0;
m_Tokens = strdup(Tokens);
}
~Tokenize()
{
delete m_Source;
if (m_Tokens)
delete m_Tokens;
if (mg_Ret)
delete mg_Ret;
}
Сначала определяешь строку как m_Source = strdup(Src); средствами crt, а потом ее удаляешь уже средствами C++: delete m_Source; причем правильно было бы указать так: delete [] m_Source;
|
|
|