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

Вниз

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

 
Студент_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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.68 MB
Время: 0.092 c
15-1267625221
oldman
2010-03-03 17:07
2010.08.27
Кто нибудь участвует в этом конкурсе?


15-1270118822
Knight
2010-04-01 14:47
2010.08.27
Сервис и ADO


2-1271927010
Rail
2010-04-22 13:03
2010.08.27
меню


15-1274090512
SIV5000
2010-05-17 14:01
2010.08.27
Bitmap + OCR


15-1263914019
TUser
2010-01-19 18:13
2010.08.27
СШ ГЭС: обледенение





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский