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

Вниз

Перегрузка операторов в Delphi 10   Найти похожие ветки 

 
XProger ©   (2006-10-27 19:23) [0]

TVector = record
 X, Y, Z : Single;
 class operator Implicit(X, Y, Z: Single): TVector;
end;

раз такое дрпускает компилятор, то как это вызвать?


 
Ketmar ©   (2006-10-27 19:33) [1]

ничего себе бред, оказывается, в D10 можно скомпилять. а точно можно? %-)


 
Джо ©   (2006-10-27 19:38) [2]

> а точно можно? %-)

Можно-то можно, но бред, ибо использовать нельзя :D


 
MeF Dei Corvi ©   (2006-10-27 19:45) [3]


>  ибо использовать нельзя

А вдруг можно? :)


 
Gero ©   (2006-10-27 19:48) [4]

Я уж лучше по старинке...


 
Джо ©   (2006-10-27 20:10) [5]

> [3] MeF Dei Corvi ©   (27.10.06 19:45)
>
> >  ибо использовать нельзя
>
> А вдруг можно? :)

Синтаксис поражал бы своей загадочностью:
 v1: TVector;
...
 v1 := x,y,z;

:)


 
Ketmar ©   (2006-10-27 20:13) [6]

>[5] Джо(c) 27-Oct-2006, 20:10
>Синтаксис поражал бы своей загадочностью:
или: (x,y,z).x := 5;
%-)


 
jack128(not home)   (2006-10-27 21:38) [7]

компилер от десятки - страшен как моя жизнь. Глюков относительно новых синтаксических фишек (которые сами по себе по меньшей степени - любопытны) - не счесть. Это видимо один из них...


 
XProger ©   (2006-10-27 21:58) [8]

Dir.Cross(Vector(0, 1, 0)).Normal
Dir : TVector, Cross и Normal методы TVector
Приводит к [Pascal Fatal Error] xxx: F2084 Internal Error: URW821

Получается, что нельзя вызывать методы record"а - результата %)
И теперь не могу понять, что означает closed топика http://qc.borland.com/wc/qcmain.aspx?d=29013 ... Это ж зверский баг! :\


 
Суслик ©   (2006-10-27 22:05) [9]

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

> И теперь не могу понять, что означает closed топика http:
> //qc.borland.com/wc/qcmain.aspx?d=29013 ... Это ж зверский
> баг! :\

см. resolution comments - duplicate.


 
Суслик ©   (2006-10-27 22:07) [10]


> компилер от десятки - страшен как моя жизнь. Глюков относительно
> новых синтаксических фишек (которые сами по себе по меньшей
> степени - любопытны) - не счесть. Это видимо один из них

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


 
Суслик ©   (2006-10-27 22:08) [11]


> XProger ©   (27.10.06 21:58) [8]
> Dir.Cross(Vector(0, 1, 0)).Normal
> Dir : TVector, Cross и Normal методы TVector
> Приводит к [Pascal Fatal Error] xxx: F2084 Internal Error:
>  URW821

наиболее распространенная ошибка при поптыке вызвать метод результата имеет код c1624
можешь в qc поискать по этому ключевому слову - там туча репортов. пока, кстати, вроде не исправили в 11 версии (в бете, правда).


 
XProger ©   (2006-10-27 22:17) [12]

Суслик, c1624 возникает при не inline методах record"а %)


 
Суслик ©   (2006-10-27 22:19) [13]


> XProger ©   (27.10.06 22:17) [12]
> Суслик, c1624 возникает при не inline методах record"а %)

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



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

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

Наверх





Память: 0.48 MB
Время: 0.063 c
15-1161709579
Геймер
2006-10-24 21:06
2006.11.12
Эмулятор Dos


2-1161818526
fog
2006-10-26 03:22
2006.11.12
OffsetRgn и TCanvas


3-1158042018
VPR
2006-09-12 10:20
2006.11.12
DBF или массив


4-1151144061
Ketmar
2006-06-24 14:14
2006.11.12
scrollbar w COMBOBOX на диалоге -- нету %-(


2-1162015160
Riply
2006-10-28 09:59
2006.11.12
Видимость переменных из private.





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