Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2009.09.06;
Скачать: [xml.tar.bz2];

Вниз

переопределение операций(сложение, вычитание...)   Найти похожие ветки 

 
master_root ©   (2008-06-18 16:07) [0]

Переопределяю стандартную операцию вычитания для моего класса. Делаю всё как написано в справке к моей BDS 2005:
Код:
class operator Subtract(a, b: TNumSys): TNumSys;virtual;abstract;  
где
TNumSus - имя моего класса внутри которого я переопределяю операцию вычитания,
virtual;abstract; - объявляю его виртуальным и абстрактным, т.к. алгоритм его работы полностью должен определяться в дочерних классах.

Компилятор на синтаксис не ругается, но прикомпиляции выдаёт аж 5 ошибок только по одной этой строчке:
[Pascal Error] numsys_concept.pas(32): E2123 PROCEDURE, FUNCTION, PROPERTY, or VAR expected
[Pascal Error] numsys_concept.pas(32): E2029 "," or ":" expected but "(" found
[Pascal Error] numsys_concept.pas(32): E2029 ";" expected but ":" found
[Pascal Error] numsys_concept.pas(32): E2029 "," or ":" expected but ";" found
[Pascal Error] numsys_concept.pas(33): E2058 Class, interface and object types only allowed in type section

Помогите пожалуйста разобраться. Что делать?


 
Viktorious ©   (2008-06-18 17:09) [1]

Читайте справку внимательнее:

Delphi for .NET and Delphi for Win32 allow certain functions, or "operators" to be overloaded within record declarations. Delphi for .NET also allows overloading within class declarations.

Перегрузка операторов в классе - только для .NET. Delphi for Win32 допускает только перегрузку операторов для записей (record).


 
master_root ©   (2008-06-18 20:18) [2]

там же в примере перегрузка используется в классе


 
master_root ©   (2008-06-18 20:28) [3]

спасибо.разобрался



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2009.09.06;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.005 c
15-1247294587
SerJaNT
2009-07-11 10:43
2009.09.06
MySQL тупит?


2-1247035166
b/@.
2009-07-08 10:39
2009.09.06
Сравнение строк - как правильно ?


15-1245256088
Павел Калугин
2009-06-17 20:28
2009.09.06
Ура, я инжинер.


1-1212752457
incm
2008-06-06 15:40
2009.09.06
Как отследить открытие и закрытие дочерних окон ?


2-1246964960
rassl
2009-07-07 15:09
2009.09.06
Классы форм





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский