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

Вниз

Длина потока...   Найти похожие ветки 

 
Lirk   (2009-06-15 22:46) [0]

Может кто обьяснит, почему размер потока ограничен значением типа
Cardinal, в то время как в VCL это тип int64?
Это недогляд или принипиальное ограничение?


 
D[u]fa   (2009-06-16 09:57) [1]

Есть такая вещь:
 STREAM_LARGE64        - turns on support of streams (and files) of size larger
                         then 4 Gbytes. Data type Int64 used for parameters of
                         the most of methods and functions in such case. (Note:
                         Int64 was introduced since Delphi5, so in earlier Delphi
                         versions using this symbol is not possible).


 
Lirk   (2009-06-16 13:33) [2]

Включал я её. Ноль эмоций. И вообще много функций не работает. Например условный поиск в строке.


 
D[u]fa   (2009-06-16 16:39) [3]

Как понять ноль эмоций?) ребилд делал? что за условный поиск? конкретно какая функция


 
Lirk   (2009-06-16 17:13) [4]

мдя про ребилд забыл...
Ну хорошо. Получил я значение типа int64. Как его первести в строку?
В VCL это делвет IntToStr. А в KOL?


 
MTsv DN   (2009-06-16 18:13) [5]

RTFM!!!


 
Lirk   (2009-06-16 18:30) [6]

Читаю. Вот цитата из книги по KOL
В Delphi, начиная с версии 5, появился тип данных Int64, для работы с 8-байтными целыми числами. Но в более ранних версиях Delphi этого типа данных не было. Для того, чтобы возможно было с ними работать и в старших версиях Delphi, в KOL вводится свой собственный тип данных I64 и разработан набор функций для работы с этим типом данных:
................................................
................................................
Никто не мешает, тем не менее, использовать встроенный в Delphi младших версий тип данных Int64 (но для преобразования таких чисел в строку и обратно я рекомендую все-таки использовать функции Int64_2Str, Str2Int64, выполняя соответствующие приведения типа данных). Использование прочих вышеуказанных функций имеет смысл, только если проект разрабатывается на Delphi 3 или 2.

Вот всё что скзано.
"выполняя соответствующие приведения типа данных."
А где функция привидения типов?
Неужели так долго её написать и вставить в библиотеку, а то вообще ввести символ условной компиляции котрый напямую позволит использовать int64?
То что приводить надо это я и так понял и функцию написал...
Но у вас что за трмоз? Или уже всё это есть а я не знаю?


 
Дмитрий К ©   (2009-06-16 18:34) [7]


Lirk   (16.06.09 18:30) [6]
> и функцию написал...

Интересно было бы посмотреть.


 
Lirk   (2009-06-16 19:05) [8]

Пожалуста

Function Int64_2I64(a_:int64):I64;
var
v:integer;
begin
v:=a_;
result.Lo:=v;
result.Hi:= a_ shr 32;
end;

var
STR_:String;
STR_:= int64_2str(Int64_2I64(9000000000));


 
Vladimir Kladov ©   (2009-06-16 19:47) [9]

Приведение типа, или typecast, описан в справке по Delphi. I64(i), где i:Int64, и Int64(j), где j: I64. Никаких функций для этого не требуется, так как внутренняя структура этих типов данных полностью совпадает. Никто не мешает использовать Int64, и там, где требуется I64, делать typecast. Символ компиляции можно, но их уже и так очень много. Кроме того, все эти IFDEF/ENDIF увеличивают число строк кода, что мешает удерживать размер kol.pas в пределах 64К строк (ограничения в компиляторе, дальше проблемы с отладчиком).

О каких тормзах (без О) речь?


 
Lirk   (2009-06-16 20:13) [10]

Да... но только в VCL
В KOL это typecast не работает. Проверьте если не верите.


 
Lirk   (2009-06-16 20:37) [11]

А на счёт тормозов, извените за то что вышла опечатка.

Что касается самих тормозов... Последнее обновление было давно.
Ошибок куча. На сайте много битых ссылок. Никому ничего не надо.

Вот вы к примеру выложили модуль GIF. А где сжатие? Стандартный модуль для Delphi его включает.

Книга заморожена. И к ней тоже много вопросов.
Или я чего-то не понимаю... Например про типы. В заголвке стоит TBitmap
А речь идёт о PBitmap.

Вот цитата стр.53

Объект растрового изображения объектного типа TBitmap создается конструкторами NewBitmap( W, H ) - создает "зависимое от устройства" растровое изображение (DDB - Device Dependent Bitmap) ширины W и высоты H пикселей;
И так везде, с каждым типом

пробовал StrSatisfy( s, p )
строка "кот" маска "к?т"
выдало false
И таких примеров можно привести много.


 
Lirk   (2009-06-16 20:45) [12]

Что касается 64К строк. А почему бы не разбить библиотеку на несколько файлов? Все контролы с формой в одну, Потоки в другую
Приведение типов в третью...


 
D[u]fa   (2009-06-17 10:42) [13]

TBitmap - объект. PBitmap - указатель на объект, теперь понятнее?
StrSatisfy - работает на ура (лично у меня), конкретно покажи пример кода с ошибкой.


> И таких примеров можно привести много.

Пожалуйста, в студию =)


> Что касается 64К строк. А почему бы не разбить библиотеку
> на несколько файлов? Все контролы с формой в одну, Потоки
> в другую
> Приведение типов в третью...

обсуждалось неоднократно... но если вкратце - переноса не будет =)


> Вот вы к примеру выложили модуль GIF. А где сжатие? Стандартный
> модуль для Delphi его включает.

Не смотрел этот модуль.. Дык сжатие реализовано, но не включено? или не реализовано и надо чтоб кто-то реализовал?


> Что касается самих тормозов... Последнее обновление было
> давно.
> Ошибок куча. На сайте много битых ссылок. Никому ничего
> не надо.


Согласен лишь с тем что обновлений давно не было. Надо "скинуться" фиксами\дополнениями и зарелизить новую версию. Про какие кучи ошибок идет речь - не понимаю...


 
Vladimir Kladov ©   (2009-06-18 19:31) [14]

Ага, я вот нашел недавно один баг: неправильно работал TCanvas.Arc. Жутко критично.


 
SPeller ©   (2009-06-23 02:40) [15]


> Lirk

Ты забыл одну вещь - KOL бесплатен и никто денег за его развитие не получает. В отличие от того же VCL. Поэтому твой гонор в сторону "сделайте то, сделайте вот это" крайне неуместен, а на фоне плохого понимания сути KOL и некоторых элементарных основ дельфей выглядит еще и глупо. Никто не заявлял на главной странице "изучить KOL легко". Однако многие его изучили. И у тебя получится. Если захочешь.


 
Dy1   (2010-01-28 19:44) [16]

> Vladimir Kladov © (18.06.09 19:31) [14]
> Ага, я вот нашел недавно один баг: неправильно работал TCanvas.Arc

давно :)


 
Vladimir Kladov ©   (2010-01-29 19:15) [17]

А нужен? В принципе, вызывается Windows.Arc(Canvas.Handle, ... и все работает. Но можно и обновить, если очень хочется.



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

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

Наверх





Память: 0.49 MB
Время: 0.001 c
11-1245091617
Lirk
2009-06-15 22:46
2017.02.05
Длина потока...


15-1457597209
Pavia
2016-03-10 11:06
2017.02.05
Учебник по HTML и CSS


2-1433112204
Германн
2015-06-01 01:43
2017.02.05
IPersistFile::Save method


1-1348130067
ТС
2012-09-20 12:34
2017.02.05
Указатель на шаблонный тип в шаблонном интерфейсе


1-1347622892
Docenko
2012-09-14 15:41
2017.02.05
Как использовать TIWExchangeBar (TMS IW)





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