![]() |
Модераторы: Snowy, MetalFan, bems, Poseidon |
![]() ![]() ![]() |
|
PsiMagistr |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 479 Регистрация: 31.12.2009 Репутация: 1 Всего: 1 |
Ребята, работе проги это не мешает, но получаю такой варнинг:
[DCC Warning] Unit1.pas(118): W1057 Implicit string cast from 'ShortString' to 'string' Впринципе я знаю, что это, но вот как можно от этого избавиться? -------------------- "Арфы нет? Возьмите бубен! Ребята, будем жить!" (с) "В бой идут одни старики" --- "ИЕ" - один из самых сумасшедших браузеров в нашей галактике. |
|||
|
||||
Amphiluke |
|
|||
![]() ☽ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1253 Регистрация: 26.8.2009 Репутация: 6 Всего: 112 |
||||
|
||||
CodeMonkey |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1839 Регистрация: 24.6.2008 Где: Россия, Тверь Репутация: 29 Всего: 89 |
http://www.transl-gunsmoker.ru/2009/09/pchars.html#d2009
Короткие строки оставлены для обратной совместимости пятнадцать лет назад. Иными словами, их нужно было перестать использовать ещё пятнадцать лет назад. -------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. |
|||
|
||||
bems |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3400 Регистрация: 5.1.2006 Репутация: 18 Всего: 88 |
CodeMonkey, они попадаются в system.pas (правда переосмысленные в utf8)
-------------------- Обижено школьников: 8 |
|||
|
||||
northener |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1361 Регистрация: 2.9.2010 Репутация: 12 Всего: 20 |
Ни за что! Они так удобны для использования в записях. P.S. К тому же и сам Борланд до сих пор ими пользуется, имхо. Иначе откуда ограничение в редакторе IDE на количество букв в строке pas-файла ![]() -------------------- Но только лошади летают вдохновенно. Иначе лошади разбились бы мгновенно! |
|||
|
||||
bems |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3400 Регистрация: 5.1.2006 Репутация: 18 Всего: 88 |
у меня для тебя плохие новости
Добавлено через 1 минуту и 44 секунды
-------------------- Обижено школьников: 8 |
|||
|
||||
northener |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1361 Регистрация: 2.9.2010 Репутация: 12 Всего: 20 |
Это какие? "в этом коротком литерале могут быть unicode-символы" - эти что ли? Оставляю за строкой неправильное упоминание термина литерал. Что IDE Delphi уже умеет в своём редакторе вставлять в текст исходника unicode-символ? Или она научилась понимать такой символ в строке pas-файла. Ты уж уточни, пожалуйста. ![]() -------------------- Но только лошади летают вдохновенно. Иначе лошади разбились бы мгновенно! |
|||
|
||||
CodeMonkey |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1839 Регистрация: 24.6.2008 Где: Россия, Тверь Репутация: 29 Всего: 89 |
Бедные азиатские пользователи ваших программ... ...а также программисты других языков (которым придётся ручками писать функции обработки этих строк). То-то и оно, что пользуется он ими только по соображениям совместимости. И, как заметил bems, часто это не чистый ShortString. Они туда пихают UTF-8, чтобы компенсировать ограничения ShortString - откуда и лезет целый ворох проблем. Я бы предпочёл, чтобы они это выкинули на помойку (раз отладить до сих пор не могут) и сделали бы как надо.
Unicode в редакторе и .pas файлах поддерживается начиная с D2005. Unicode-идентификаторы - с D2009. -------------------- Опытный программист на C++ легко решает любые не существующие в Паскале проблемы. |
|||
|
||||
northener |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1361 Регистрация: 2.9.2010 Репутация: 12 Всего: 20 |
Ну увы им, этим азиатским пользователям. Так я и не рассчитываю на их рынок.
А вот это для меня новость. -------------------- Но только лошади летают вдохновенно. Иначе лошади разбились бы мгновенно! |
|||
|
||||
northener |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1361 Регистрация: 2.9.2010 Репутация: 12 Всего: 20 |
Я бы тоже много чего предпочёл изменить в своих ранних, но до сих пор поддерживаемых проектах. Но "где деньги, Зин"? -------------------- Но только лошади летают вдохновенно. Иначе лошади разбились бы мгновенно! |
|||
|
||||
PsiMagistr |
|
||||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 479 Регистрация: 31.12.2009 Репутация: 1 Всего: 1 |
Ребята, вкратце
Для чего мне это нужно?
Это будет писаться в файл. Вот так:
Если не будет ограничения длины, не видать нам записи в файл... Это сообщение отредактировал(а) PsiMagistr - 8.5.2011, 08:33 -------------------- "Арфы нет? Возьмите бубен! Ребята, будем жить!" (с) "В бой идут одни старики" --- "ИЕ" - один из самых сумасшедших браузеров в нашей галактике. |
||||
|
|||||
bems |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3400 Регистрация: 5.1.2006 Репутация: 18 Всего: 88 |
![]() нет, ты не оставляй. Ты мне скажи что не правильно, потому что иначе я буду считать что ты не знаешь где именно имеет место ограничение в 255 символов
Разумеется. С разморозкой Вас ![]() Добавлено через 3 минуты и 50 секунд PsiMagistr, с ограничением по длине это уже ShortString а он единственный строковой тип, который не указатель. А писать указатель в файл не очень хорошая идея. Можно конечно и нормальные строки писать в файл, но там нужно чуточку больше телодвижений (которые впрочем можно возложить на rtl/vcl) -------------------- Обижено школьников: 8 |
||||
|
|||||
PsiMagistr |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 479 Регистрация: 31.12.2009 Репутация: 1 Всего: 1 |
bems, Развивайте мысль!
![]() Возложите, плиз. У меня не строки. В том то и дело. Записи у меня, со строковыми вкраплениями. Их и надо писать в файл. Если вам удастся обойти ShortString без лишних телодвижений ![]() -------------------- "Арфы нет? Возьмите бубен! Ребята, будем жить!" (с) "В бой идут одни старики" --- "ИЕ" - один из самых сумасшедших браузеров в нашей галактике. |
|||
|
||||
bems |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3400 Регистрация: 5.1.2006 Репутация: 18 Всего: 88 |
PsiMagistr, не, просто записать весь рекор одним махом не выйдет. а так вообще вот статейка
http://www.rsdn.ru/article/delphi/serialization.xml -------------------- Обижено школьников: 8 |
|||
|
||||
PsiMagistr |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 479 Регистрация: 31.12.2009 Репутация: 1 Всего: 1 |
Вообще забавная задача...
ЗАДАЧА: Записать в файл некоторый рекорд со строковыми вкраплениями произвольной длины. Ясно, что никакой шортстринг не прокатэ ))) Нужен чистый Стринг. Поднимать для этого дела серилизацию объектов? Круто. И что будем делать, Штирлиц? Это сообщение отредактировал(а) PsiMagistr - 8.5.2011, 08:45 -------------------- "Арфы нет? Возьмите бубен! Ребята, будем жить!" (с) "В бой идут одни старики" --- "ИЕ" - один из самых сумасшедших браузеров в нашей галактике. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Для новичков" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |