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

Вниз

COM-технологии и драки   Найти похожие ветки 

 
Крот   (2003-04-19 08:40) [0]

Недавно был на собеседовании, там мне дали тест на общую подготовку. Был там такой вопросец:


type
TSomeClass = class(TObject, ISomeInterface)
public:
procedure DoSomthing();
end;

with TSomeClass.Create() do
begin
DoSomething();
Free();
end;

Чего тут, спрашивают, неправильно. Я ниче не вижу. Оказалось - Free нельзя вызывать. Я с ними поспорил, говорю, это ж не указатель на интерфейс, это просто класс, реализующий интерфейс, все тут можно, Create же вызываете и довольны. А они мне сказали, что собаку на COM - технологиях съели, а я мерзкий тип сомнительной наружности, дальше была грязная драка, и меня, э-э-э, мн-э-э, ну неважно...

Слушайте, мастера, а по-моему я прав. Скажите свое веское "УГУ"...


 
Sergey Masloff   (2003-04-19 08:58) [1]

Ну, тут много неправильного.
Во-первых неизвестно есть ли реализация QueryInterface и так далее в TSomeClass, иначе это просто не скомпилируется. Тогда уж
не TSomeClass = class(TObject, ISomeInterface)
а TSomeClass = class(TInterfacedObject, ISomeInterface)

Во-вторых
DoSomthing() и DoSomething() это как говорят в Одессе две большие разницы

В-третьих. Если именно так как ты написал то Free нужен так как создается класс и вызывается его метод. А если было написано например
with TSomeClass.Create() as ISomeInterface
то Дельфи поймет что тебе нужно и при выходе из области видимости для ссылки на интерфейс сгенерирует вызов Release и тогда Free действительно не нужно


 
Крот   (2003-04-19 09:19) [2]


> Во-вторых
> DoSomthing() и DoSomething() это как говорят в Одессе две
> большие разницы


Ну это очепятка


> with TSomeClass.Create() as ISomeInterface


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


 
Sergey Masloff   (2003-04-19 10:25) [3]

Немного оффтопик. Я не понимаю на фига на собеседовании устраивать экзамен ;-) Что это дает? Как любит говорить мой шеф - на Delphi мы за полгода любого научим программировать. Думать не научим, а программировать запросто. Так что у нас например на собеседовании просто стараются поговорить с человеком на общие темы. Шеф называет фейс-контроль ;-) Потом два месяца испыт. срок, дается какая-нибудь задача приближенная к боевой но не на полную катушку. При этом к человеку прикрепляют "куратора" который помогает войти в курс дела. Если человек не подходит это видно через месяц. Вобщем, система вроде бы себя оправдывает.


 
blackman   (2003-04-19 10:34) [4]

>Sergey Masloff
Верным путем идете товарищи!
Экзамен конечно ничего не даст. Может просто отпугнуть.


 
Крот   (2003-04-19 11:22) [5]


> Sergey Masloff (19.04.03 10:25)


Вашими бы устами... У меня все первым делом выясняют знаю ли я PHP (вариант JScript), и сразу скисают, когда я говорю, что изучал, но реальных задач не решал, ну не приходилось, что ж теперь.


 
han_malign   (2003-04-19 11:37) [6]

> зря я заехал в ухо начальнтку отдела...
- оригинальный метод трудоустройства, ты программистом устраиваешься, или охранником?
З.Ы. А в любой "цивилизованной" стране, ты бы срок схлопотал, за милую душу (ибо где тебе, безработному, взять $100000-$500000 на штраф). Кстати и нас тоже - у меня племянник чуть не загремел, за сломанный нос (из-за бабы..., а мальчик из Москвы оказался, грамотный, сам драку начал, а потом сразу побежал заяву кидать - $200 как ... сбрило (на день рожденя отложеные), хорошо начальник отделения хороший знакомый...)


 
Крот   (2003-04-19 13:34) [7]


> han_malign © (19.04.03 11:37)

Это я так тонко шутю.



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

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

Наверх





Память: 0.46 MB
Время: 0.007 c
14-23284
SPeller
2003-04-22 03:19
2003.05.08
Хотите узнать о себе больше?


14-23323
Top Gun
2003-04-07 19:42
2003.05.08
Что такое стек ?


1-23112
Sour
2003-04-27 13:32
2003.05.08
Почему на канве Tbitmap ничего не рисуется?


6-23254
Fixxxer
2003-03-06 02:03
2003.05.08
Как узнать какая винда стоит на другой машине в локалке


1-23126
YurA
2003-04-26 11:46
2003.05.08
QuickReport s bugs





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