Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.08.27;
Скачать: CL | DM;

Вниз

Как устроены классы?   Найти похожие ветки 

 
Студент_404   (2010-05-06 12:14) [0]

Объясните пожалуйста как устроены классы и как они функционируют.....
А то в институте не объясняли, а в книгах не понятно...((

Как они сочетаются с апи? Можно ли написать свой аналог TForm на чистом апи?

З.Ы. Хотя б книги нормальные посоветуйте, а то может мне просто не попадалось чтоб для начинающих самоучек объяснения были...


 
brother ©   (2010-05-06 12:21) [1]

эх, даже не знаю, что ответить...


 
Плохиш ©   (2010-05-06 12:22) [2]


> А то в институте не объясняли, а в книгах не понятно...

Думаешь здесь понятней объясняют?

> Как они сочетаются с апи?

Так же как и всё остальное из области программирование.

> Можно ли написать свой аналог TForm на чистом апи?

Можно.


 
Студент_404   (2010-05-06 12:30) [3]


> эх, даже не знаю, что ответить...


Жаль...(


> Думаешь здесь понятней объясняют?


Я просто на это надеюсь... (с)


> Можно.


А примерчика не найдётся простенького?(


 
Плохиш ©   (2010-05-06 12:31) [4]


> А примерчика не найдётся простенького?

Исходники класса TForm.


 
oldman ©   (2010-05-06 12:33) [5]

Учись, студент! ©


 
Студент_404   (2010-05-06 12:33) [6]


> Исходники класса TForm.


Ключевое слово было "простенького"...)))))))


 
brother ©   (2010-05-06 12:37) [7]

> Можно ли написать свой аналог TForm на чистом апи?

зы. гуглить учись...
http://www.google.ru/search?hl=ru&newwindow=1&client=firefox&hs=rqH&rls=org.mozilla:ru:official&ei=kn _iS9bcDNaWOLqdweUN&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CAUQBSgA&q=delphi+%D1%84%D0%BE%D1%80%D0%BC%D0%B0+winapi&spell=1

http://www.delphisources.ru/pages/articles/2005_year/art_12_10_05/art_12_10.05.html


 
brother ©   (2010-05-06 12:40) [8]

или [7] не совсем то?


 
Студент_404   (2010-05-06 12:57) [9]

Эм...Там же не создание своих классов, а использование системного...

Я имел ввиду что-нить вида

Type
    MyClass=Class
          size: Integer;
          ...
     privat
          ...
     ...
     end;


Как и кому будут сообщения от винды приходить - они ж окну направляются... Вроде бы..... х_х


 
stas ©   (2010-05-06 13:00) [10]

Студент_404   (06.05.10 12:57) [9]
>Как и кому будут сообщения от винды приходить - они ж окну >направляются... Вроде бы..... х_х
Ну, так сделай окно на API.

Можеш  еще KOL посмотреть, как там сделано.


 
KSergey ©   (2010-05-06 13:04) [11]

Предлагаю зайти с другого конца: попробуйте написать программу "на чистом АПИ", в коорй создайте и выведите окно (именно свое окно, а не просто диалог стандартный). На окне что-то нарисуйте (хотя бы кватратик и кружок, сложность как раз не принципиальна). Рисовать надо в WM_PAIN, разумеется. Свернули/развернули - рисунок должен остаться.

Таких примеров в принципе можно и в инете готовых найти, здесь ЮЗ погда-то выкладывал. Ну тут по вкусу: или сам, по документации -тогда хотя бы все шишки соберешь, или гготовый пример досконально разобрать, немного поменять что-нибудь, это кому как удобнее (я вот, признаться, по второму пути ходить не умею; обязательно пропущу половину; но есть много более внимательные и вдумчивые люди).

Все это к чему? а к тому, чтобы понять какие точнго действия надо сделать для того, чтобы окошко сообще вывести.

Тогда уже станет понятно что же длжен делать наш класс TNashaForma и что в себе содержать. Отсюда, уверен, вырастет и общее понимание в том числе по поводу "нафига в TForm столько "лишнего".


 
KSergey ©   (2010-05-06 13:05) [12]

> они ж окну направляются...

верно.
Поэтому наш класс должен это окно создать.


 
Ega23 ©   (2010-05-06 13:07) [13]


> А то в институте не объясняли


Извините - но вот не верю и всё.


 
Юрий Зотов ©   (2010-05-06 13:11) [14]

> Студент_404

Чтобы нормально ответить на Ваши вопросы, придется написать книжку страниц на 300. Как Вы думаете, ЗДЕСЬ такре возможно?

Да и написаны уже такие книжки, так что писать их уже не надо, их надо читать. По вопросу устройства классов рекомендую книгу Рэя Конопки, а по вопросам взаимодействия с Windows - книгу Антона Григорьева.


 
KSergey ©   (2010-05-06 13:12) [15]

> Ega23 ©   (06.05.10 13:07) [13]
> > А то в институте не объясняли

Охотно верю.
Там рассказывают всякие заумы по теории.
А тут - чистая практика и пара моментов, на которые есть стандартные "трюки" (типа как по пришедшему сообщению найти соотв. экземпляр класса).
В институтах профессора обычно "выше этого".


 
Игорь Шевченко ©   (2010-05-06 13:16) [16]


> В институтах профессора обычно "выше этого".


и правильно делают


 
Студент_404   (2010-05-06 13:18) [17]


> Предлагаю зайти с другого конца: попробуйте написать программу
> "на чистом АПИ", в коорй создайте и выведите окно (именно
> свое окно, а не просто диалог стандартный). На окне что-
> то нарисуйте (хотя бы кватратик и кружок, сложность как
> раз не принципиальна). Рисовать надо в WM_PAIN, разумеется.
>  Свернули/развернули - рисунок должен остаться.


Вот на "чистом апи" я прекрасно могу всё делать... Я не знаю как это в класс превращать...
А рисовать можно не тока в WM_PAINT...))


> Поэтому наш класс должен это окно создать.


Ну допустим... А сообщения перехватывать чтоль? Или как?


> Извините - но вот не верю и всё.


Ну... Что я могу поделать - не верьте... Я ж не могу это как-то доказать... Нам даже не сказали что TForm, TLabel, TButton, итд являются классами... Называли их просто "стандартными компонентами"...((
Зато у нас вместо основных предметов по программированию ввели шольную программу истории, биологии, философии, социологии и.т.п.... х_х


 
Плохиш ©   (2010-05-06 13:22) [18]

Зачем оно тебе, это программирование? Тебе же все-равно не интересно.


 
Студент_404   (2010-05-06 13:29) [19]


> Зачем оно тебе, это программирование? Тебе же все-равно не интересно.


Отчего ж? Очень интересно...


> Юрий Зотов ©   (06.05.10 13:11) [14]


Спасибо, поищу этих авторов...)


 
Leonid Troyanovsky ©   (2010-05-06 13:38) [20]


> Студент_404   (06.05.10 12:57) [9]

> Как и кому будут сообщения от винды приходить - они ж окну
> направляются... Вроде бы.....

Посмотри исходние TTimer.
Или, например, http://rsdn.ru/forum/delphi/883505.aspx

Правда, это невидимые окна, но, суть не в этом.

> их просто "стандартными компонентами"...((

Компоненты суть объекты, т.е., экземпляры классов,
потомки TObject.

--
Regards, LVT.


 
test ©   (2010-05-06 13:53) [21]

http://www.helloworld.ru/texts/comp/other/oop/index.htm

Гради Буч
Объектно-ориентированный анализ и проектирование
с примерами приложений на С++


 
oxffff ©   (2010-05-06 14:14) [22]


> Студент_404   (06.05.10 12:14)  
> Объясните пожалуйста как устроены классы и как они функционируют.
> ....
> А то в институте не объясняли, а в книгах не понятно...((



Если перечитаешь хорошую книгу минимум раза 4, то понимание придет.
Очень рекомендую.


 
oxffff ©   (2010-05-06 14:14) [23]


> Если перечитаешь хорошую книгу минимум раза 4, то понимание
> придет.
> Очень рекомендую.


Естественно вдумчиво и внимательно.


 
atruhin ©   (2010-05-06 14:40) [24]

См. > [14] Юрий Зотов ©   (06.05.10 13:11)
По вопросу устройства классов рекомендую
> книгу Рэя Конопки, а по вопросам взаимодействия с Windows
> - книгу Антона Григорьева.

Я бы порекомендовал для начала: К. Пачеко, С. Тейксейра "Delphi 5. Руководство разработчика".
Книги хоть и написаны давно (кроме Григорьева), но абсолютно актуальны и гораздо лучше большинства "мусора" который можно найти в книжном.


 
Anatoly Podgoretsky ©   (2010-05-06 15:08) [25]

> oxffff  (06.05.2010 14:14:23)  [23]

Так и нечего советовать количество, пусть читает пока не поймет.


 
oxffff ©   (2010-05-06 15:20) [26]


> Anatoly Podgoretsky ©   (06.05.10 15:08) [25]
> > oxffff  (06.05.2010 14:14:23)  [23]
>
> Так и нечего советовать количество,


После прочтения четырех раз и не понимания я бы порекомендовал - розги.
До полного просветвления и быстрого освоения не только классов, но и учебников и пеналов.


 
RWolf ©   (2010-05-06 15:33) [27]


> Объясните пожалуйста как устроены классы и как они функционируют.
> ..

Грубо говоря, класс — это запись, внутри которой можно объявлять функции (методы).
Плюс к этому, есть уровни видимости для каждого поля и метода, или инкапсуляция. Плюс наследование и полиморфизм (см. гугль).


 
Кто б сомневался ©   (2010-05-06 16:45) [28]


> Объясните пожалуйста как устроены классы
>


Я уж думал он спрашивает про то реально как устроены классы. Т.е. как технически реализована поддержка классов в языке с его виртуальными методами, как просчитываются смещения итп..
А тут оказывается вон что.


 
Студент_404   (2010-05-06 17:37) [29]


> Я уж думал он спрашивает про то реально как устроены классы.


Ну отчего ж... Это мне тоже было бы интересно... ))
Только сначала с этим разберусь...


 
Студент_404   (2010-05-06 17:54) [30]

У меня интернета нету, с чужого сидел сейчас...
Спасибо всем за советы, авторов поищу...
Буду на следующей неделе... *


 
Конформист   (2010-05-06 19:01) [31]


>
> Как они сочетаются с апи? Можно ли написать свой аналог
> TForm на чистом апи?


У меня на полное изучение VCL изнутри ушло три месяца. Что для этого нужно - последний установленный MSDN, знание английского, просмотр исходников VCL и куча времени для экспериментов.


 
test ©   (2010-05-06 19:05) [32]

oxffff ©   (06.05.10 15:20) [26]
Это не совет прямо, а какой то sexual herassment))


 
Конформист   (2010-05-06 19:06) [33]


> Студент_404   (06.05.10 17:37) [29]
>
> > Я уж думал он спрашивает про то реально как устроены классы.
>
> Ну отчего ж... Это мне тоже было бы интересно... ))
> Только сначала с этим разберусь...


Классы и VCL вещь полностью отличная. VCL построенная по парадигме ООП, но ООП не VCL, это намного более расширенная и завязанная на Windows вещь, особенно те же виртуальные(динамические) функции которые обрабатывают сообщения.


 
oxffff ©   (2010-05-06 19:34) [34]


> Конформист   (06.05.10 19:01) [31]
>
> >
> > Как они сочетаются с апи? Можно ли написать свой аналог
>
> > TForm на чистом апи?
>
>
> У меня на полное изучение VCL изнутри ушло три месяца


Не скромно.


 
Григорьев Антон ©   (2010-05-06 19:47) [35]


> RWolf ©   (06.05.10 15:33) [27]
> Грубо говоря, класс — это запись, внутри которой можно объявлять
> функции (методы).

За такое объяснение сразу банить надо :) Это в C++ так, в TP так было, а в Delphi класс - это самостоятельная сущность, лишь синтаксически напоминающая запись, и даже для самого начинающего очень вредно думать про класс как про запись с методами. Лучше вообще никак не думать для начала, чем так.


> Студент_404   (06.05.10 12:30) [3]

> Как и кому будут сообщения от винды приходить - они ж окну
> направляются...

Этот вопрос подробно разбирается здесь: http://www.delphikingdom.com/asp/viewitem.asp?catalogid=169#07

Про устройство классов изнутри кое-что есть здесь: http://www.delphikingdom.com/asp/viewitem.asp?catalogid=216


 
Игорь Шевченко ©   (2010-05-06 19:58) [36]


> и даже для самого начинающего очень вредно думать про класс
> как про запись с методами


Эт почему же ?


 
Григорьев Антон ©   (2010-05-06 20:31) [37]


> Игорь Шевченко ©   (06.05.10 19:58) [36]
> Эт почему же ?
> <Цитата>

Да надоело мне объяснять новичкам, почему не надо делать вот так:

type
 PSomeClass = ^TSomeClass;
 TSomeClass = class ...


Научатся работать с указателями на записи и пытаются делать то же самое с классами. Пусть лучше сразу в голове сидит, что это совсем не одно и то же, что сходство только внешнее.

А ещё в новых версиях Delphi есть записи с методами. Так и надо учить: "есть записи с методами, а есть классы, которые тоже как бы записи с методами, но не совсем"? :)))


 
Игорь Шевченко ©   (2010-05-06 20:59) [38]

Григорьев Антон ©   (06.05.10 20:31) [37]


> Да надоело мне объяснять новичкам, почему не надо делать
> вот так:


Принципиально класс - это таки запись с методами :)
А как он создается в конкретном языке - ну какая нафиг разница ?

вот в java и в C# классы тоже динамически создаются, однако не вызывают такого кода, потому что указателей нету.


 
Конформист   (2010-05-06 20:59) [39]


> oxffff ©   (06.05.10 19:34) [34]
>
>
> Не скромно.


Ну до этого я писал всякое ПО на Delphi только не особо вникал как оно устроено внутри. Delphi  тем хорош что можно писать рабочее коммерческое ПО, даже особо не понимая что ты пишешь.


 
sniknik ©   (2010-05-06 23:25) [40]

> вот в java и в C# классы тоже динамически создаются, однако не вызывают такого кода, потому что указателей нету.
а записи там есть? может и путаться не в чем?


 
Игорь Шевченко ©   (2010-05-06 23:31) [41]

sniknik ©   (06.05.10 23:25) [40]

насчет java не знаю, а в C# есть, безусловно, зовутся struct


 
Плохиш ©   (2010-05-06 23:44) [42]


> вот в java и в C# классы тоже динамически создаются

a static?


 
Сергей М. ©   (2010-05-07 00:09) [43]


> Конформист   (06.05.10 20:59) [39]
> Delphi  тем хорош что можно
> писать рабочее коммерческое ПО, даже особо не понимая что
> ты пишешь.


Формошлепством это называют)
А формошлеп всегда рисковал и рискует быть крепко поколоченым Заказчиком, когда из-за этого самого "непонимания что ты пишешь" у Заказчика, заплатившего деньги за сей продукт (и возможно даже немалые),  рано или поздно  возникнут проблемы.


 
Конформист   (2010-05-07 00:51) [44]


> Сергей М. ©   (07.05.10 00:09) [43]
>
> Формошлепством это называют)


Ну в общем-то да. Только обычно иполнители часто нанимают студентов формошлёпов для удешевления процесса разработки. А проблемы начинаются не у конкретного разработчика, а у фирмы, весь бизнесплан которой строится на "дешевле чем у конкурентов".


 
Игорь Шевченко ©   (2010-05-07 00:58) [45]

Конформист   (07.05.10 00:51) [44]


> Только обычно иполнители часто нанимают студентов формошлёпов
> для удешевления процесса разработки


По моему опыту, это удорожание процесса разработки раза в полтора минимум.


 
Германн ©   (2010-05-07 01:07) [46]


> По моему опыту, это удорожание процесса разработки раза
> в полтора минимум.

И нехилый геморрой у других сотрудников той же конторы.


 
Конформист   (2010-05-07 02:59) [47]


> Игорь Шевченко ©   (07.05.10 00:58) [45]
>
> По моему опыту, это удорожание процесса разработки раза
> в полтора минимум.


Все зависит от необходимости функционирования данного ПО.


 
Германн ©   (2010-05-07 03:05) [48]


> Все зависит от необходимости функционирования данного ПО.

Нет. Всё упирается (в конечном итоге) в техподдержку.


 
Владислав ©   (2010-05-07 08:10) [49]


> Компоненты суть объекты, т.е., экземпляры классов,
> потомки TObject.


Вот говорят так, и на начальном этапе прививают неверное понимание.
Компоненты - суть классы, потомки TComponent, ибо не все потомки TObject - это компоненты.
А фразы "экземляры классов" и "потомки TObject" суть вообще разные вещи.


 
oxffff ©   (2010-05-07 08:48) [50]


>  Как устроены классы? [D7, 2000, XP]


Одно из представлений классов полиморфном лямбда исчислении  - это запись из начальных значений и метода который транслирует объект из открытого вида в закрытый(экзистенциальный тип).
Объект представляется как запись из ссылки на экземпляр и метода, который возвращает запись с методами этого объекта(фактически это есть реализация полиморфизма).


 
oxffff ©   (2010-05-07 08:49) [51]

Еще есть объектое исчисление, где присутствует в явном виде понятие объекта.


 
Leonid Troyanovsky ©   (2010-05-07 08:55) [52]


> Владислав ©   (07.05.10 08:10) [49]

> Компоненты - суть классы, потомки TComponent, ибо не все
> потомки TObject - это компоненты.
> А фразы "экземляры классов" и "потомки TObject" суть вообще
> разные вещи.

Компонент (К) есть экземпляр класса TComponent или его потомка,
Класс TComponent потомок класса TObject.
Т.е.:
1. К есть экземпляр класса потомка TObject, т.е. объект {суть объект}
2. Любой класс компонента  есть потомок класса TObject.
{потомки TObject}.

Не вижу здесь  "все потомки TObject - это компоненты".
А "экземляры классов" и "потомки TObject" и не объединены.

И, во-ще, стоит ли отрываться от контекста:

> Нам даже не сказали что TForm, TLabel, TButton, итд являются
> классами... Называли их просто "стандартными компонентами".
> ..((

IMHO, дидактические приемы можно применять и более полезно,
направив живительную струю сокровенного знания нуждающимся.

--
Regards, LVT.


 
Владислав ©   (2010-05-07 09:23) [53]


> Leonid Troyanovsky ©   (07.05.10 08:55) [52]


Борланд, Эмбаркадеро не совсем с Вами согласны:

"Components and Classes

Because components are classes, component writers work with objects at a different level from application developers. Creating new components requires that you derive new classes."


Так что еще раз, компонент - это класс, а не экземпляр класса.

И еще раз, первоначальная фраза звучала так: "Компоненты суть объекты, т.е., экземпляры классов, потомки TObject."

Как Вам такая цепочка рассуждений:
"Берем класс TStream. Что такое экземпляр этого класса? TStream.Create()? Тогда да, это уже не класс, а экземпляр класса. Но, вроде бы, он потомок TObject? Но потомком TObject является TStream, а не TStream.Create. Это же разные вещи? Но впрочем это мелочи. Раз он потомок TObject, значит это компонент."

"Где смысл, где логика..." (С)


> IMHO, дидактические приемы можно применять и более полезно,
> направив живительную струю сокровенного знания нуждающимся.


Согласен, а их, приемы, нужно применять не только полезно, но и правильно.


 
Leonid Troyanovsky ©   (2010-05-07 09:37) [54]


> Владислав ©   (07.05.10 09:23) [53]

> Так что еще раз, компонент - это класс, а не экземпляр класса.

Далекие от жизни суждения, здесь обсуждались вовсе не проблемы
писателей компонентов.

Здесь компонент - экземпляр класса TComponent или его потомков.
То, что студентов научили бросать на форму, но, возможно, забыли
напомнить про их объективную сущность.

> Как Вам такая цепочка рассуждений:

Не понимаю этих попыток подписать меня на какие-то левые суждения.

Чего я непонятного сказал в трех своих постах?

--
Regards, LVT.


 
Владислав ©   (2010-05-07 09:41) [55]


> Leonid Troyanovsky ©   (07.05.10 09:37) [54]
> ...
> Чего я непонятного сказал в трех своих постах?


Я уже указал на неточность Вашей фразы выше.


 
oxffff ©   (2010-05-07 09:42) [56]

Удалено модератором


 
Anatoly Podgoretsky ©   (2010-05-07 09:52) [57]

> Владислав  (07.05.2010 09:23:53)  [53]

И в той же строке "work with objects"


 
Владислав ©   (2010-05-07 09:55) [58]


> Anatoly Podgoretsky ©   (07.05.10 09:52) [57]
>
> И в той же строке "work with objects"


"Objects, Components, and Controls
...
Every object (class) inherits from TObject.
..."


Ибо синонимы.


 
Leonid Troyanovsky ©   (2010-05-07 09:57) [59]


> Владислав ©   (07.05.10 09:41) [55]

> Я уже указал на неточность Вашей фразы выше.

Аналогично, выше указывал на неточность оных указаний,
на враках не пойман.

Ну, а правильность и полезность тех или иных дидактических
приемов предлагаю проверить в песочнице. Жаждущие ждут
живительную струю: http://www.delphimaster.ru/cgi-bin/forum.pl?n=18

--
Regards, LVT.


 
Anatoly Podgoretsky ©   (2010-05-07 10:05) [60]

> Владислав  (07.05.2010 09:55:58)  [58]

А вот это Every object (class) inherits from TObject совсем умиляет.
Так что плюнь на дидактику и эту документацию, она не выдерживает критики.
Это какой то немецкий порнофильм - смешались в кучу кони, люди.


 
Игорь Шевченко ©   (2010-05-07 11:56) [61]


> А вот это Every object (class) inherits from TObject совсем
> умиляет.


а ты вызови inheritsFrom :)


 
GrayFace ©   (2010-05-07 13:32) [62]

Студент_404   (06.05.10 13:18) [17]
Вот на "чистом апи" я прекрасно могу всё делать... Я не знаю как это в класс превращать...

В 2 словах - в оконной процедуре достаешь откуда-нибудь ссылку на объект и вызываешь у него метод обработки сообщения. Откуда достаешь - самое простое - в GWL_USERDATA, можно в классе хранить, а у VCL функция CreateObjectInstance пишет прямо код мини-процедурки с этой ссылкой.
Какой метод - любой. В лоб - просто метод с case-ом по Msg. Но в VCL все гораздо лучше. Во-первых, метод-обработчик - свойство(property). Он вызывает в конечном счете Dispatch - это пециально сделанный механизм - Dispatch для сообщения вызывает соответствующий динамический методод (объявленный в классе с пометкой [b]message[/b] и номером сообщения) или DefaultHandler.


 
Palladin ©   (2010-05-07 13:35) [63]

в классе обычно до 20 парт, 1 учительский стол и 41, или менее, стульев


 
turbouser ©   (2010-05-07 13:39) [64]


> Palladin ©   (07.05.10 13:35) [63]

Еще доска, мел, окна, двери..


 
Юрий Зотов ©   (2010-05-07 15:16) [65]

> Конформист   (06.05.10 19:01) [31]
> У меня на полное изучение VCL изнутри ушло три месяца.

У меня на неполное изучение VCL изнутри ушло лет 10. И до сих пор я знаю VCL изнутри неполностью - хотя на вполне профессиональном уровне написал более сотни компонентов, множество других классов, кучу редакторов свойств, редакторов компонентов и экспертов IDE.

Следовательно - или Вы гений, или я дурак, или что-то здесь преувеличено.
:o)


 
Игорь Шевченко ©   (2010-05-07 15:28) [66]

Юрий Зотов ©   (07.05.10 15:16) [65]


> У меня на неполное изучение VCL изнутри ушло лет 10. И до
> сих пор я знаю VCL изнутри неполностью


Аналогичная фигня, только лет побольше..


 
Владислав ©   (2010-05-07 16:22) [67]


> Leonid Troyanovsky ©   (07.05.10 09:57) [59]


Леонид, прочитайте еще раз [49] и [55].
Никто не пытался ловить Вас "на враках".
Спасибо, что хоть послали меня на высшем уровне вежливости! :)


> Anatoly Podgoretsky ©   (07.05.10 10:05) [60]


Анатолий, а что удивительного? Вот:

1. "Classes and Objects
...
Objects are dynamically allocated blocks of memory whose structure is determined by their class type. Each object has a unique copy of every field defined in the class, but all instances of a class share the same methods."


Речь идет о экземпляре класса (instance).

2. Цитата, которую привели Вы: Every object (class) inherits from TObject

Речь идет о классе (class).

Другой контекст, и смысл "object" изменился. Еще используется "object type".

Ну употребляют так "object".

Я то в [49] речь вел не об объектах, а о том, что класс (class) и экземпляр класса (instance) - разные вещи. Только почему на это так Леонид отреагировал и обиделся, я так и не понял.


 
Leonid Troyanovsky ©   (2010-05-07 17:06) [68]


> Владислав ©   (07.05.10 16:22) [67]

> Леонид, прочитайте еще раз [49] и [55].

Перечитал, остался при своих.

> Спасибо, что хоть послали меня на высшем уровне вежливости!
>  :)

Дык, не посылал же, только пригласил ;)

> Я то в [49] речь вел не об объектах, а о том, что класс
> (class) и экземпляр класса (instance) - разные вещи.

ClassType.InheritsFrom vs InheritsFrom
Что сова о пень, что пень о сову - все равно, не жить сове.
TClass = class of TObject - тот, еще, бином Ньютона.

> почему на это так Леонид отреагировал и обиделся

А я, вроде бы,  и не обижался :)

--
Regards, LVT.


 
Владислав ©   (2010-05-07 17:59) [69]


> Leonid Troyanovsky ©   (07.05.10 17:06) [68]
> Перечитал, остался при своих.


Ну тогда, даже принимая во внимание дидактическое употребление, в корне с Вами не согласен. Так что тоже останусь при своих.


> ClassType.InheritsFrom vs InheritsFrom
> Что сова о пень, что пень о сову - все равно, не жить сове.
>
> TClass = class of TObject - тот, еще, бином Ньютона.


Не дошла до меня Ваша тонкая мысль. Что сказать хотели?


> А я, вроде бы,  и не обижался :)


Это хорошо! Я очень рад! :)


 
Leonid Troyanovsky ©   (2010-05-07 18:23) [70]


> Владислав ©   (07.05.10 17:59) [69]

> Не дошла до меня Ваша тонкая мысль. Что сказать хотели?

Хотел сообщить о смерти совы.
Она не выживет. Sorry.

--
Regards, LVT.


 
Студент_404   (2010-05-13 12:48) [71]


> Leonid Troyanovsky ©   (07.05.10 08:55) [52]
>
> И, во-ще, стоит ли отрываться от контекста:
> > Нам даже не сказали что TForm, TLabel, TButton, итд являются
> > классами... Называли их просто "стандартными компонентами".
> > ..((
>
> IMHO, дидактические приемы можно применять и более полезно,
> направив живительную струю сокровенного знания нуждающимся.


Извините, но что-то совсем не понял что вы имели ввиду... о_о
Нам просто показали основные методы и научили ими пользоваться...
А об устройстве решили не упоминать... Или может не успели (нам время на программу урезали)...


> Григорьев Антон ©   (06.05.10 19:47) [35]


Спасибо!)


> Игорь Шевченко ©   (06.05.10 20:59) [38]
>
> Принципиально класс - это таки запись с методами :)


Хм. А как работают записи с методами? На чистом API в Делфи 7 нельзя их создать?
И если создать несколько "переменных" такого типа - один и тот же метод в разных переменных будет работать со своим набором переменных?
Как такое сделать?(


 
Palladin ©   (2010-05-13 12:55) [72]


> На чистом API в Делфи 7

ну я же говорил, в классе обычно до 20 парт, 1 учительский стол и 41, или менее, стульев
turbouser еще дополнил про доску, мел, окна, двери..
вот тебе прямо туда надо

Самое интересное, что почему-то никто не понял, что сам вопрос "Как устроены классы?" вообще ответа не имеет. Зато полезли в какие-то дебри, буквоедством заниматься...


 
Студент_404   (2010-05-13 13:03) [73]


> вот тебе прямо туда надо


Ну а я где? =\

Кстати я писал уже:


> Студент_404   (06.05.10 13:18) [17]
>
> у нас вместо основных предметов по программированию ввели шольную программу истории, биологии, философии, социологии


Что я сделаю с учебной программой? =\\


 
Leonid Troyanovsky ©   (2010-05-13 13:03) [74]


> Студент_404   (13.05.10 12:48) [71]

> Извините, но что-то совсем не понял что вы имели ввиду..

Я адресовал только [20]. Тайна таймера уже постигнута?

Остальное к теме не относится, это о педагогических приемах.

--
Regards, LVT.


 
Студент_404   (2010-05-13 13:07) [75]

Да, исходник TTimer самое что надо...)
Спасибо...))


 
Игорь Шевченко ©   (2010-05-13 13:15) [76]


> Хм. А как работают записи с методами? На чистом API в Делфи
> 7 нельзя их создать?
> И если создать несколько "переменных" такого типа - один
> и тот же метод в разных переменных будет работать со своим
> набором переменных?
> Как такое сделать?(


А книги по ООП не судьба читать ? Ну или в тырнете поискать что-то на тему. Лекции по основам ООП на этом сайте - услуга платная


 
Anatoly Podgoretsky ©   (2010-05-13 14:02) [77]

> Игорь Шевченко  (13.05.2010 13:15:16)  [76]

Платная если вслух и особенно с выражением.


 
Игорь Шевченко ©   (2010-05-13 15:02) [78]

Anatoly Podgoretsky ©   (13.05.10 14:02) [77]

Нет, даже опубликование в письменном виде. А то, что ты имеешь в виду, это вообще запредельные деньги.



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

Текущий архив: 2010.08.27;
Скачать: CL | DM;

Наверх




Память: 0.7 MB
Время: 0.056 c
15-1271774469
domowou
2010-04-20 18:41
2010.08.27
Нужен компонент - кнопка с поддержкой alpha-канала (PNG)


2-1269796732
fiascko
2010-03-28 21:18
2010.08.27
построение графиков


2-1271096606
Б
2010-04-12 22:23
2010.08.27
Как узнать, что в приложении течёт память?


15-1266102977
OneYoungMan
2010-02-14 02:16
2010.08.27
Куб рабочего стола


2-1270656345
Беликов А.А,
2010-04-07 20:05
2010.08.27
ADOQuery и TThread