Оригинальный DVD-ROM: eXeL@B DVD !
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 2 августа!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

ПРОГРАММИРОВАНИЕ НА C и С++



Давно заметил, что всё-таки языки С/C++ это не самый лучший вариант программирования под Windows. Сейчас появилась масса более современных и удобных языков, например тот же Python - кроссплатформенный язык, очень легок в изучение. Я его изучил буквально за несколько дней по этому курсу - ссылка. Автор постарался, там видеоуроки на удивление легкие и понятные.

CString::FreeExtra

Этот метод освобождает любую дополнительную память, предварительно занятую строкой, но больше ненужную. Это должно уменьшить память используемую строковым объектом. Метод приводит буфер к точной длине, возвращенной GetLength.

void FreeExtra( );

Пример

Следующий пример печатает три строки, показанные ниже при Выводе.

#include <afx.h>

void PrintLengths (CString* str)

{

_tprintf ("Длина Распределения - %d, Строковая длина - %d\n ",

str. GetAllocLength (), str. GetLength ());

}

void main ()

{

// Создать CString с 1024 символами

CString str ('x', 1024);

PrintLengths (str);

/* Присвоение меньшей строки не будет освобождать память CString , поскольку это предполагает, что строка будет расти снова так или иначе.

*/

str = _T ("Хоккей является Лучшим! ");

PrintLengths (str);

// Этот запрос вынуждает CString освобождать дополнительное пространство

// эта память не нужна.

str. FreeExtra ();

PrintLengths (str);

}

Вывод

Длина распределения - 1024, Строковая длина - 1024

Длина распределения - 1024, Строковая длина - 24

Длина распределения - 64, Строковая длина - 24

---



<< ВЕРНУТЬСЯ В ПОДРАЗДЕЛ

<< ВЕРНУТЬСЯ В ОГЛАВЛЕНИЕ




Материалы находятся на сайте https://exelab.ru/pro/



Оригинальный DVD-ROM: eXeL@B DVD !


Вы находитесь на EXELAB.rU
Проект ReactOS