Delphi vs C++ vs C#
, ну и Java немножко, где-то ближе к старшему байту номеров страниц
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.216.156] |
|
|
Правила раздела:
| Страницы: (495) « Первая ... 350 351 [352] 353 354 ... 494 495 ( Перейти к последнему сообщению ) |
Delphi vs C++ vs C#
, ну и Java немножко, где-то ближе к старшему байту номеров страниц
|
Сообщ.
#5266
,
|
|
|
|
Цитата korvin @ из приведенного в вике примера вывода программы ясно следует, что "я" хочу получить полное имя типа Замечательно. Его и получаешь. |
|
Сообщ.
#5267
,
|
|
|
|
Цитата Romkin @ Замечательно. Его и получаешь. из typeof(T) этого не следует |
|
Сообщ.
#5268
,
|
|
|
|
Цитата korvin @ из typeof(T) этого не следует Почему? На вход полается конкретный тип. Ты не можешь вызвать метод без инстанцирования. |
|
Сообщ.
#5269
,
|
|
|
|
Цитата Romkin @ Цитата korvin @ из typeof(T) этого не следует Почему? На вход полается конкретный тип. Так проблема как раз в том typeof(x) вернет не "тип x'а", а "x", если x - тип |
|
Сообщ.
#5270
,
|
|
|
|
Цитата D_KEY @ Так проблема как раз в том typeof(x) вернет не "тип x'а", а "x", если x - тип Кто это сказал? typeof должна вернуть тип переданного аргумента, как и следует из названия. В Delphi, и, как я подозреваю, в Prism, нет суперметакласса. Он не нужен. И никого не удивляет, что я могу в Delphi вызвать метод класса ClassName (например) и из класса и из экземпляра этого класса. Результат будет тот же самый. |
|
Сообщ.
#5271
,
|
|
|
|
Цитата Romkin @ typeof должна вернуть тип переданного аргумента, как и следует из названия. Совершенно верно. Типом 1 является Integer. Но типом самого Integer не может быть Integer. Добавлено Цитата Romkin @ В Delphi, и, как я подозреваю, в Prism, нет суперметакласса. Он не нужен. Я не знаю, что такое суперметакласс. Тут речь о метаклассе. |
|
Сообщ.
#5272
,
|
|
|
|
Цитата Romkin @ Почему? На вход подается конкретный тип. Ты не можешь вызвать метод без инстанцирования. потому что это так читается "тип(чего-то)", type of something, равносильно "что-то.получить_тип" (something.getType()). и при чем тут "Ты не можешь вызвать метод без инстанцирования"? Добавлено Цитата Romkin @ typeof должна вернуть тип переданного аргумента, как и следует из названия. вот именно, поэтому typeof(Integer) должна вернуть Type (например), но никак не Integer |
|
Сообщ.
#5273
,
|
|
|
|
Цитата korvin @ вот именно, поэтому typeof(Integer) должна вернуть Type (например), но никак не Integer На каком основании и вообще зачем? Кому нужна такая информация? Цитата korvin @ type of something, равносильно "что-то.получить_тип" (something.getType()). Представь себе, что GetType - метод класса, и все встанет на свои места. |
|
Сообщ.
#5274
,
|
|
|
|
Цитата Romkin @ Цитата korvin @ вот именно, поэтому typeof(Integer) должна вернуть Type (например), но никак не Integer На каком основании и вообще зачем? Если это не нужно, то typeof(Integer) не должен компилироваться. |
|
Сообщ.
#5275
,
|
|
|
|
Цитата Romkin @ На каком основании и вообще зачем? Кому нужна такая информация? на основании английского языка и элементарной логики. кому нужна -- другой вопрос |
|
Сообщ.
#5276
,
|
|
|
|
Цитата D_KEY @ Если это не нужно, то typeof(Integer) не должен компилироваться. С чего вдруг? typeof(T) значит, должен, а это - нет? Тип типа есть этот тип. Тебя же не смущает истинность одновременно instanceof(object, type) и instanceof(type, object)? Ой. isinstance конечно. |
|
Сообщ.
#5277
,
|
|
|
|
Цитата Romkin @ Представь себе, что GetType - метод класса, и все встанет на свои места. и? он и есть метод класса. у меня-то все как раз на своих местах. |
|
Сообщ.
#5278
,
|
|
|
|
Цитата korvin @ на основании английского языка и элементарной логики. кому нужна -- другой вопрос Ерунда. Элементарная логика подсказывает, что, например в Delphi 1. Любой класс порождается от TObject 2. TObject - класс. Истинность TObject.InheritsFrom(TObject) логично. Точно так же каждый класс замкнут сам на себя, является экземпляром своего типа. И суперкласс type не нужен. Добавлено Цитата korvin @ и? он и есть метод класса. у меня-то все как раз на своих местах. НУ вот. На каком основании метод класса должен давать разные результаты при вызове из самого класса и экземпляра этого класса? |
|
Сообщ.
#5279
,
|
|
|
|
Цитата Romkin @ С чего вдруг? typeof(T) значит, должен, а это - нет? Тип типа есть этот тип. Тебя же не смущает истинность одновременно instanceof(object, type) и instanceof(type, object)? и typeof(T) не должен. и нет тип типа не этот тип. меня смущает. и компилятор джавы смущает. и всех нормальных людей смущает. |
|
Сообщ.
#5280
,
|
|
|
|
Цитата Romkin @ Тип типа есть этот тип. Добавлено Цитата Romkin @ Истинность TObject.InheritsFrom(TObject) логично. Цитата Точно так же каждый класс замкнут сам на себя, является экземпляром своего типа. |