Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.06.2012, 15:57   #1
DETONAVOMEK
Пользователь
 
Регистрация: 25.06.2010
Сообщений: 28
По умолчанию string и char**

Здравствуйте!
Как правильно очищать пам'ять в следующей ситуации?
Код:
string ReturnOneField(string sqlRequest)
{
	char** localtable;
	int rows, cols;
	sqlite3_get_table(db, sqlRequest.c_str(), &localtable, &rows, &cols, NULL);//Записывает в localtable таблицу с rows рядков и cols колонок.
	sqlRequest = localtable[1];
	delete[] localtable;//Здесь виндовс выдает ошибку типа_BLOCK_TYPE_IS_VALID(pHead -> nBlockUse)
	return sqlRequest;
}
И как обстоит ситуация с string? Он сам за собою подчищает пам'ять?
DETONAVOMEK вне форума Ответить с цитированием
Старый 27.06.2012, 16:10   #2
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

2DETONAVOMEK
Цитата:
delete[] localtable;//Здесь виндовс выдает ошибку типа_BLOCK_TYPE_IS_VALID(pHead -> nBlockUse)
так делать нельзя

Цитата:
sqlite3_free_table(localtable);
нужно так.

Цитата:
И как обстоит ситуация с string? Он сам за собою подчищает пам'ять?
ты не сможешь в данном случае просто заюзать string, ибо скулайтный интерфейс рассчитан на работу с С-строками.
ищи какую нить обертку, типо http://www.codeproject.com/Articles/...per-for-SQLite, если хочешь использовать возможности плюсов. или лучше сразу Qt.

пс. если ты просто хочешь вернуть вторую строчку (как в твоем примере), то да, так можно
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance

Последний раз редактировалось pproger; 27.06.2012 в 16:15.
pproger вне форума Ответить с цитированием
Старый 27.06.2012, 16:28   #3
DETONAVOMEK
Пользователь
 
Регистрация: 25.06.2010
Сообщений: 28
По умолчанию

pproger, спасибо! Всё очищает =)
DETONAVOMEK вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
из string в char tema65 Общие вопросы C/C++ 1 23.12.2011 19:12
string-char-wchar_t-char-string чето потерял magog7 Общие вопросы C/C++ 0 08.08.2011 20:21
string <==> char Fedcomp Общие вопросы C/C++ 19 14.07.2010 23:34
String To Char RIO Общие вопросы C/C++ 2 22.06.2010 00:30
char->string eds Общие вопросы .NET 1 28.11.2007 17:22