Форум: "Основная";
Текущий архив: 2006.10.01;
Скачать: [xml.tar.bz2];
ВнизКласс объекта Найти похожие ветки
← →
Kos[UFO] © (2006-08-19 21:57) [40]Пусик
>Класс - специальная структура, описывающая данные и правила работы с ними. >Никакого отношения к указателям.
Да здравствует царствованье разума!
default
>мы понимаем, что класс и указатель вещи не имеющие ничего общего
Очень здравое и логически правильное мнение
tesseract
>> идейно правильно говорить, что адрес VMT определяет класс,
>>
>А поля объекта, типа, значения не имеют? Без них VMT - кучка ненужного
> хлама, вспоминаем каноническое определение инкапсуляции.
Вот это я и пытался сказать хакеру.
Юрий Зотов
>класс - это константа, содержащая адрес VMT. То есть, указатель.
Если класс это константа - то получается у меня на винчестере сидят 80 миллиардов таких классов. Я могу написать какую-то цыфру из 4 байт на бумаге и это тоже будет класс!
Вы чествуете алогизм в ваших утверждениях?
Куда вы дели всю остальную информацию о классе?
И где вообще вы такое прочитали?
DprYg
>Так что, можно сделать вывод, что "класс" вообще - не указатель. А этот
> один человек вообще - не хакер.
:)
Джо
>> [17] Юрий Зотов © (19.08.06 17:16)
>> Физически, класс - это константа, содержащая адрес VMT.
>> То есть, указатель.
>Ну вот, хоть один человек со мной солидарен.
А с каких это пор физика не подлежит законам логики?
А если говорить о том, что можно получить взяв класс как адрес то:
var
aClass:TClass;
p:pointer;
begin
aClass:= form1.ClassType;
p:= TClass;
То p будет указывать на метод QueryInterface, а не на VMT!
← →
Мефисто (2006-08-19 22:24) [41]
> Kos[UFO] © (19.08.06 21:57) [40]
> То p будет указывать на метод QueryInterface, а не на VMT!
QueryInterface - а собственно откуда?
← →
tesseract © (2006-08-19 22:37) [42]> То p будет указывать на метод QueryInterface, а не на VMT!
Так, новая стадия флуда - почему класс в Делфи содержит методы COM-объекта :-)
← →
Юрий Зотов © (2006-08-19 23:58) [43]> p будет указывать на метод QueryInterface, а не на VMT!
Нет, именно на VMT. А уж там по смещению ноль содержится адрес метода QueryInterface. Косвенная у него будет адресация, не прямая.
← →
McSimm © (2006-08-20 00:44) [44]
> Если класс это константа - то получается у меня на винчестере
> сидят 80 миллиардов таких классов. Я могу написать какую-
> то цыфру из 4 байт на бумаге и это тоже будет класс!
> Вы чествуете алогизм в ваших утверждениях?
Вы чувствуете демагогию в ваших словах ?
Любой класс можно рассматривать как указатель. Но
Не любой указатель это класс.
(а уж представить себе цифру из 4х байт я вообще затруднился :)
← →
Германн © (2006-08-20 01:01) [45]
> McSimm © (20.08.06 00:44) [44]
>
> Любой класс можно рассматривать как указатель. Но
> Не любой указатель это класс.
>
> (а уж представить себе цифру из 4х байт я вообще затруднился
> :)
С первым утвеждением согласен на все 100! Имхо - одна из лучших формулировок в ветке.
Со вторым - категорически НЕТ! В оригинале то было "Я могу написать какую-то цыфру из 4 байт"! Найди одно отличие! :-)
← →
Kos[UFO] © (2006-08-20 04:39) [46]2McSimm & Германн:
Вы хотели сказать, что в определенный момент времени на определенной машине можно однозначно идентифицировать класс по некоему указателю. Все это прекрасно понимают. Но нельзя пользоваться этим для определения понятия класса при любом уровне абстракти.
В моих словах нет ни какой демагогии.
PS: McSimm, я говрю о определении слова
← →
Sergey Masloff (2006-08-20 09:12) [47]Kos[UFO] © (20.08.06 04:39) [46]
>Но нельзя пользоваться этим для определения понятия класса при любом >уровне
Очень даже можно если мы говорим о РЕАЛИЗАЦИИ класса в Delphi. Насколько я понимаю, изначальный ваш спор был с человеком который считает себя хакером а не профессором-лингвистом. Вы б ему сразу сообщили что желаете спорить о интерпретации смысла слов а не о внутренних структурах реализующих абстрактные концепции. Он бы с вами и спорить не стал.
← →
Anatoly Podgoretsky © (2006-08-20 11:59) [48]С хакером спорить не надо, для него все остальные ламеры.
← →
Palladin © (2006-08-21 12:13) [49]
> Kos[UFO] ©
Есть понятие (теория) класса и реализация.
В теории класс конечно же не указатель.
В рамках реализации ООП в Delphi (да и не только в Delphi) сам класс является указателем.
По поводу разных точек зрения см. Юрий Зотов © (19.08.06 17:16) [17]
Страницы: 1 2 вся ветка
Форум: "Основная";
Текущий архив: 2006.10.01;
Скачать: [xml.tar.bz2];
Память: 0.54 MB
Время: 0.016 c