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

Вниз

Вопрос о синтаксисе.   Найти похожие ветки 

 
Демонов Е.В.   (2002-10-10 14:25) [0]

Вот такой вопрос. Есть:

type
PType=^TType

TType=record
FType:SomeType
..........
..........
..........
end;

procedure hihi;
var s:PType
begin
new(s);

s.Ftype:=SomeTypeVariable

s^.Ftype:=SomeTypeVariable

Результат одинаковый и даже addr(s.Ftype)=addr(s^.Ftype);
Что это значит или компилятор прочто понимает что хотели ?


 
Внук   (2002-10-10 14:27) [1]

С некоторых пор (как только появились переменные типа class)разыменование производится компилятором автоматически, если того требует ситуация.


 
still   (2002-10-10 14:30) [2]

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


 
Внук   (2002-10-10 14:38) [3]

still © (10.10.02 14:30)
Тогда, уважаемый, Вам бы пришлось при каждом t=MyClass.Create; писать t^.MyFunction; :))


 
ZrenBy   (2002-10-10 14:45) [4]

>Внук © (10.10.02 14:38)
А мне такой подход по умолчанию не нравится.
Я предпочитаю, чтобы компилятор делал то,
что я хочу, а не то, что он предполагает.
Хотя бы Warning выдавал, как другие.


 
Внук   (2002-10-10 14:49) [5]

ZrenBy © (10.10.02 14:45)
"То, что я хочу" делает только старик Хоттабыч...
Программы работают согласно документации (компиляторы, в том числе).


 
still   (2002-10-10 14:55) [6]


> Внук © (10.10.02 14:38)

я был бы не против. Почему в том же CBuilder"е так сделано (Object->Method)? На мой взгляд, если я использую указатель, то и обращаться должен как к указателю.
А таких неявных фишек, пусть даже и описанных в документации на КОНКРЕТНЫЙ КОМПИЛЯТОР (а не на язык), на мой взгляд, должно быть поменьше.


 
Внук   (2002-10-10 14:59) [7]

Не спорю. Просто есть желаемое, есть действительное. Паскаль, imho, уже перебарщивает с желанием упростить жизнь начинающим, наоборот, еще более все запутывая. Например, те же операции со строками... Но это уже другая тема :)


 
SVM (Perm)   (2002-10-10 14:59) [8]

Наоборот,это круто! А то надоедает писать Ptr^.Method!
А в CBuilder"е так сделано из-за стандартов и глупого
синтаксиса!


 
still   (2002-10-10 15:04) [9]


> SVM (Perm) (10.10.02 14:59)

а begin end не надоело писать из-за глупого синтаксиса?
В C например {} - и всего делов-то.



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

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

Наверх





Память: 0.57 MB
Время: 0.036 c
1-68737
The
2002-10-11 11:49
2002.10.21
слетела справка в виде НТМЛ (файлы *.chm)


14-68957
Aralekin
2002-09-27 19:06
2002.10.21
А кто такие эти Мастера Дельфи ???


3-68641
Senator
2002-09-30 09:56
2002.10.21
работа с 2 серверами


14-68952
3d[Power]
2002-09-27 17:43
2002.10.21
New version of NFK released!


1-68725
Magic
2002-10-10 10:35
2002.10.21
Вопро по самой Delphi





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