Символьный тип служит для объявления
Символьный тип служит для объявления байтовых величин. В Паскале значения символов типа
Char
заключены в диапазоне от 0 до 255. В C++ символ без знака
(unsigned char) эквивалентен описанию
Char Паскаля, однако символ со знаком
(signed char) имеет другой диапазон значении от -127 до +128. Два варианта присваивания значения некоторому символу на Паскале выглядят как:
с : Char ;
с := #65;
с := Char(0rd('А' ) ) ;
что эквивалентно следующему C++ коду:
char с ;
с = 65;
с = 'А'; // Здесь используются одиночные кавычки.
Заглавные и строчные буквы различаются в C++, поэтому C++Builder требует внимательного обращения с клавишей
Shift. Для Паскаля же не имеет значения, верхний или нижний регистр клавиатуры использовался при подготовке текста программы. Если в C++ программе вы используете переменную, объявленную с заглавной буквы, то такая инструкция как:
top = 20;
вызовет ошибку компиляции "Undefined symbol "top"'. Булевы значения "истина" и "ложь" могут записываться на Паскале как true. True, TRUE, TruE и т.д. - как вам больше нравится, хотя по традиции используется нотация True и False (с заглавной буквы). Компилятор C++Builder разрешает использовать типизированные булевы переменные
bool, значения которых принято писать строчными буквами.
Ключевое слово Паскаля "with" на C++ не имеет эквивалента, поэтому переводя программу в C++Builder, вам придется добавлять спецификатор класса ко всем свойствам и методам. Таким образом, фрагмент кода на Паскале:
with Label
do begin
Top := 20;
Left := 20;
Caption := 'Здравствуй, мир!' ;
end;
на C++ следует переписать в следующем виде:
Label ->Top =20;
Label->Left = 20;
Label->Caption = "Здравствуй, мир!";
Ключевое слово Паскаля "as" на C++ снова не имеет эквивалента, поэтому, переводя программу в C++Builder, следует использовать оператор динамического преобразования типа
dynamic_cast. Этот оператор кажется менее удобным, однако его преимущество заключается в том, что проверка допустимости преобразования данного типа не связана с анализом исключений. Таким образом, фрагмент кода на Паскале:
with Sender
as TLabel
do
Caption := 'Здравствуй, мир1';
на C++ следует переписать в следующем виде:
TLabel* label = dynamic_cast<TLabel*>(Sender);
if (label)
label->Caption = "Здравствуй, мир1";
Паскалевы множества. C++ не поддерживает концепцию типа множества (set), как такового. Вместо множества C++ программисты используют битовые поля, которые не менее эффективны, однако более сложны для понимания и обращения. Поскольку VCL повсеместно использует паскалевы множества, для их интерпретации в C++Builder введен шаблонный класс Set. Множества очищаются посредством метода Clear. Для добавления элементов к множеству используется оператор вставки (“), а для удаления - оператор экстракции (”).
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий