Объектно-ориентированное программирование на С++ - eDrive

Объектно-ориентированное программирование на С++ - eDrive Объектно-ориентированное программирование на С++ - eDrive

edrive.narod.ru
from edrive.narod.ru More from this publisher
13.01.2015 Views

48 ремещение строк внутри списка выполняется методом Move. Удалением строки занимается метод Delete, а Clear очищает список: void StringLists3 () { TStringList *tsl = new TStringList; tsl–>Add (“Раз”); tsl–>Add (“Два”); ShowMessage (tsl–>Count); ShowStr (tsl); // Раз Два tsl–>Insert (1, “Полтора”); ShowStr (tsl); // Раз Полтора Два tsl–>Move (0, 2); ShowStr (tsl); // Полтора Два Раз tsl–>Exchange (0, 1); ShowStr (tsl); // Два Полтора Раз tsl–>Delete (1); ShowStr (tsl); // Два Раз tsl–>Sort (); ShowStr (tsl); // Два Раз int index; if (tsl–>Find (“Раз”, index)) ShowMessage (index); // 0 tsl–>Clear (); ShowStr (tsl); TStringList *temp = new TStringList; temp–>Assign (tsl); ShowStr (temp); // Два Раз delete temp; Memo1–>Lines–>Assign (tsl); RichEdit1–>Lines–>Assign (tsl); tsl–>Assign (Memo1–>Lines); TStrings *ml = Memo1–>Lines; ml–>Add (“Три”); ShowMessage (ml–>Count); ml–>Move (0, 1); ml–>Insert (1, “Четыре”); ml–>Delete (1); ml–>Clear (); ComboBox1–>Items–>AddStrings (tsl); TStrings *lb = ListBox1–>Items; lb–>AddStrings (tsl); lb–>Add (“Три”); lb–>Append (“Четыре”); ShowMessage (lb–>Count); lb–>Insert (2, “Пять”); lb–>Move (0, 1); lb–>Exchange (0, 1); lb–>Delete (1); lb–>SaveToFile (“1.txt”); lb–>Clear ();

lb–>LoadFromFile (“1.txt”); ShowMessage (lb–>Text); ShowMessage (lb–>Strings[0]); ShowMessage (ListBox1–>ItemIndex); // номер выделенной строки if (ListBox1–>Selected[1] == true) ShowMessage (lb–>Strings[ListBox1–>ItemIndex]); ListBox1–>Sorted = true; ListBox1–>ItemIndex = 1; } void ShowStr (TStringList *z) { AnsiString s; for (int i=0; iCount; ++i) s+= z–>Strings[i] + ‘\n’; ShowMessage (s); } 49 Структуры и объединения Упростить представление и групповую обработку разнотипных данных помогают структуры (structure). Их объявления: struct имяТипаСтруктуры { объявлениеПолей }; struct имяСтруктуры { объявлениеПолей } [=списокЗначений ]; struct имяТипаСтруктуры имяСтруктуры [={ списокЗначений }]; где объявление полей имеет формат Тип имяПоля;… Как и любой тип, структура представляет абстрактную категорию, характеризующую размер памяти и способ обработки данных. Для работы с данными создаются переменные: имяТипаСтруктуры списокИменСтруктур; Структуры инициализируют, подобно классам: имяСтруктуры.имяПоля = Значение; указательНаСтруктуру–>имяПоля = Значение; Имена полей уникальны в пределах структуры. Поля поддерживают все операции, характерные для их типов. Структуры и объединения могут вкладываться друг в друга. Примеры: void Structures1 () { struct Student { AnsiString firstName; int birthYear;

48<br />

ремещение строк внутри списка выполняется методом Move. Удалением<br />

строки занимается метод Delete, а Clear очищает список:<br />

void StringLists3 () {<br />

TStringList *tsl = new TStringList;<br />

tsl–>Add (“Раз”);<br />

tsl–>Add (“Два”);<br />

ShowMessage (tsl–>Count);<br />

ShowStr (tsl);<br />

// Раз Два<br />

tsl–>Insert (1, “Полтора”); ShowStr (tsl); // Раз Полтора Два<br />

tsl–>Move (0, 2); ShowStr (tsl); // Полтора Два Раз<br />

tsl–>Exchange (0, 1); ShowStr (tsl); // Два Полтора Раз<br />

tsl–>Delete (1); ShowStr (tsl);<br />

// Два Раз<br />

tsl–>Sort (); ShowStr (tsl);<br />

// Два Раз<br />

int index; if (tsl–>Find (“Раз”, index)) ShowMessage (index); // 0<br />

tsl–>Clear (); ShowStr (tsl);<br />

TStringList *temp = new TStringList;<br />

temp–>Assign (tsl); ShowStr (temp); // Два Раз<br />

delete temp;<br />

Memo1–>Lines–>Assign (tsl);<br />

RichEdit1–>Lines–>Assign (tsl);<br />

tsl–>Assign (Memo1–>Lines);<br />

TStrings *ml = Memo1–>Lines;<br />

ml–>Add (“Три”);<br />

ShowMessage (ml–>Count);<br />

ml–>Move (0, 1);<br />

ml–>Insert (1, “Четыре”);<br />

ml–>Delete (1);<br />

ml–>Clear ();<br />

ComboBox1–>Items–>AddStrings (tsl);<br />

TStrings *lb = ListBox1–>Items;<br />

lb–>AddStrings (tsl);<br />

lb–>Add (“Три”);<br />

lb–>Append (“Четыре”);<br />

ShowMessage (lb–>Count);<br />

lb–>Insert (2, “Пять”);<br />

lb–>Move (0, 1);<br />

lb–>Exchange (0, 1);<br />

lb–>Delete (1);<br />

lb–>SaveToFile (“1.txt”);<br />

lb–>Clear ();

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!