Форум: "Начинающим";
Текущий архив: 2012.01.22;
Скачать: [xml.tar.bz2];
ВнизЧто такое object и как с ним работать? Найти похожие ветки
← →
Очень злой (2011-10-11 22:29) [0]Попался мне модуль вот типа с такой штукой в интерфейсной части:
type
OName = object
private
...
public
procedure ...
procedure ...
procedure ...
...
end;
Похоже немного на описание класса, но не класс... Что это такое? И как мне пользоваться его методами?
Не могу ничего найти по этому поводу в интернете.
На одном сайте, правда нашел такое упоминание:Ключевое слово Object имеет одно принципиальное использование - чтобы квалифицировать функцию или тип данных процедуры, позволяя ему обратиться к эквивалентному объектному методу.
Устаревшее его использование (не показан в вышестоящем синтаксисе), использовалось, чтобы создать объект (теперь мы используем конструктор класса).
← →
Awesome-o 4000 (2011-10-11 22:38) [1]Вот тут описывается применение этого ключевого слова. Похоже, оно из turbo pascal и паскаля для Apple:
http://ru.wikipedia.org/wiki/Object_Pascal
← →
Awesome-o 4000 (2011-10-11 22:40) [2]
> Для введения новой объектной модели введено ключевое слово
> class (в Turbo Pascal ключевое слово object).
← →
sniknik © (2011-10-11 22:44) [3]посмотри КОЛ (ссылка вверху страницы), он весь на них.
← →
Ega23 © (2011-10-11 22:48) [4]Кто-то что-то такое говорил, что под object дескать на стеке память выделяется.
← →
Anatoly Podgoretsky © (2011-10-11 22:55) [5]> Очень злой (11.10.2011 22:29:00) [0]
Пользоваться этим не надо, разве что запустить очень старую программу. Оно
для совместимости и только.
← →
Германн © (2011-10-12 00:42) [6]
> Anatoly Podgoretsky © (11.10.11 22:55) [5]
Читай:
> sniknik © (11.10.11 22:44) [3]
← →
Плохиш © (2011-10-12 01:07) [7]
> Очень злой (11.10.11 22:29)
Читай справку - она источник знаний
Als Alternative zu Klassentypen können mit der folgenden Syntax auch Objekttypen deklariert werden:
type Objekttypname = object (VorfahrObjekttyp)
Elementliste
end;
Objekttypname ist ein beliebiger gültiger Bezeichner, (VorfahrObjekttyp) ist optional, und Elementliste definiert die Felder, Methoden und Eigenschaften der Klasse. Wird kein VorfahrObjekttyp angegeben, hat der neue Typ keinen Vorfahren. Bei Objekttypen können Elemente nicht als published deklariert werden.
Da Objekttypen nicht von TObject abgeleitet sind, verfügen sie über keine integrierten Konstruktoren, Destruktoren oder andere Methoden. Instanzen können mit der Prozedur New erstellt und mit Dispose freigegeben werden. Sie können Variablen eines Objekttyps aber auch einfach wie bei einem Record-Typ deklarieren.
Objekttypen werden nur aus Gründen der Abwärtskompatibilität unterstützt. Ihre Verwendung ist in neuen Anwendungen nicht zu empfehlen.
← →
Anatoly Podgoretsky © (2011-10-12 01:55) [8]> Германн (12.10.2011 00:42:06) [6]
KOL ставишь в пример, ну так это же для мазохистов.
← →
OW © (2011-10-12 11:02) [9]помнится..
и писать надо было как-то так :)
TOb = object
i: Integer;
sl:TStringList;
private
procedure showI;
procedure init;
procedure destroy;
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure Tob.showI;
begin
if sl.Count > 0 then
ShowMessage(IntToStr(i));
end;
procedure Tob.init;
begin
sl := TStringList.Create;
end;
procedure Tob.destroy;
begin
FreeAndNil(sl);
end;
===========
procedure TForm1.btn1Click(Sender: TObject);
var
ob: POb;
begin
New(ob);
ob.init;
ob.showI;
ob.i := 111;
ob.showI;
ob.destroy;
Dispose(ob);
end;
Nostalgie...
On se ressemble,
tu es tendre,
moi aussi...
Nostalgie...
... бла-бла-бла...
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2012.01.22;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.004 c