Главная страница
    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.46 MB
Время: 0.008 c
1-68780
123000
2002-10-11 19:23
2002.10.21
Опять Richedit


1-68854
Демонов Е.В.
2002-10-10 14:25
2002.10.21
Вопрос о синтаксисе.


1-68800
Маша
2002-10-09 23:38
2002.10.21
Помогите, pls, беда с закачкой :-(


1-68732
kofman
2002-10-10 23:53
2002.10.21
Как создать bitmap из иконки?


14-68958
Бильврёст
2002-09-27 13:08
2002.10.21
Помогите справиться с ошибкой.





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