Разное
Последние книги
Самое популярное
Все бесплатно
Все ссылки на файлы, расположенные на страницах сайта, добавлены пользователями и доступны для бесплатного скачивания. За содержание этих файлов администрация сайта ответственности не несет.
Навигация
Вопросы
Удалить файл в Корзину
Категория: Приложение
Категория: Приложение
Компоненты ToolBar и PageScroller
Категория: Компоненты
Категория: Компоненты
Сохранение странички в файл из TWebBrowser
Категория: Интернет и Сети
Категория: Интернет и Сети
Компоненты TabControl, PageControl, TabSet, TabbedNoteBook, NoteBook
Категория: Компоненты
Категория: Компоненты
Как соединить несколько файлов в один
Категория: Текст и строки
Категория: Текст и строки
Дата изменения файла
Категория: Файловая система
Категория: Файловая система
Определение размера файла
Категория: Файловая система
Категория: Файловая система
Сохранить документ Word как RTF на DELPHI
Категория: Файловая система
Категория: Файловая система
Компонент HotKey
Категория: Компоненты
Категория: Компоненты
Создание цветных строк в ListBox
Категория: Компоненты
Категория: Компоненты
Delphi - Справочник: AnsiString
AnsiString
|
type AnsiString; |
Тип (Unit System)
|
Тип данных, который содержит строку AnsiChar
|
Описание:
|
Тип данных AnsiString используется, чтобы содержать последовательность символов, подобно предложениям. Каждый символ AnsiChar, гарантируется, что будет в размере 8 бит. AnsiString может содержать любое число символов, ограниченное только памятью. В отличие от ShortString, AnsiString - указатель, ссылающийся на переменные. Память распределяется для AnsiString только когда необходимо. Например, присваивание значения одного AnsiString другому не распределяет память для копии первой строки. Вместо этого, ссылка считает первую строку увеличенной, и второй AnsiString устанавливает указатель на него. Но когда вторая строка изменяется, то для этой новой строки выделяется новая память, и ссылка считает первую строку уменьшенной. Когда на строку больше не ссылаются (последний указатель AnsiString установлен на ноль), она уничтожается. AnsiString может быть присвоен от других строк, от функций, которые возвращают строку, и конкатенациями как в данном примере. |
Пример кода: Присвоение двум AnsiString, и управление ими
|
var string1, string2 : AnsiString; begin // Присвоение известного предложения первой строке string1 := 'Hello World'; // Присвоение второй строке // Это просто указывает string2 на string1 // Число ссылок на память строки 'Hello World' равно 2 string2 := string1; // Добавление второй строке // Это разъединяет от string1 - создаётся новая память для строки, // чтобы хранить значение string2 string2 := string2 + ', how is everyone?'; // И наконец, делаем длину первой строки равной 5 SetLength(string1, 5); // Показ обоих хначений ShowMessage('String1 = '+string1); ShowMessage('String2 = '+string2); end;
Результат:
|
String1 = Hello String2 = Hello World, how is everyone? |
Примечание:
|
В строках первый символ имеет индекс 1 (массивы начинаются с 0 для первого элемента). |