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

Вниз

D2010 string -> AnsiString   Найти похожие ветки 

 
Dennis I. Komarov ©   (2011-11-25 10:23) [0]

x: string;
function (y: AnsiString)....

y(AnsiString(x) - корректно?


 
Palladin ©   (2011-11-25 10:40) [1]

да


 
И. Павел ©   (2011-11-25 10:42) [2]

String — это псевдоним для UnicodeString.
Из справки:

UnicodeString is assignment compatible with all other string types. However, assignments between AnsiString and UnicodeString do the appropriate up or down conversions. Note that assigning a UnicodeString type to an AnsiString type is not recommended and can result in data loss.


 
Dennis I. Komarov ©   (2011-11-25 10:51) [3]

пасиб, а то меня что-то смущало...


 
И. Павел ©   (2011-11-25 10:57) [4]

> пасиб, а то меня что-то смущало...

Продолжайте смущаться и дальше:
procedure TForm1.Button1Click(Sender: TObject);
var s: string;
   c: WideChar;
   a: AnsiString;
begin
 c := #1000;
 s := "АБР" + c + "ВАЛГ";
 a := s;
 Caption := s + " : " + a;
end;


 
Dennis I. Komarov ©   (2011-11-25 11:12) [5]


> И. Павел ©   (25.11.11 10:57) [4]

И что? Что меня тут должно смутить? :)


 
И. Павел ©   (2011-11-25 11:42) [6]

> И что? Что меня тут должно смутить? :)

Data Loss. А именно — кодировки.


 
Dennis I. Komarov ©   (2011-11-25 11:52) [7]

Не, тут как ничего смущающего - ясный перец, что в Ansi весь unicode не засунешь...


 
Ega23 ©   (2011-11-25 11:56) [8]

wString: string;
aString: AnsiString;

wString := string(aString);
aString := AnsiString(wString);


 
И. Павел ©   (2011-11-25 12:07) [9]

> [7] Dennis I. Komarov ©   (25.11.11 11:52)
> Не, тут как ничего смущающего — ясный перец, что в Ansi
> весь unicode не засунешь...

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


 
Anatoly Podgoretsky ©   (2011-11-25 12:07) [10]

> Ega23  (25.11.2011 11:56:08)  [8]

Теперь осталось выкинуть приведение


 
Ega23 ©   (2011-11-25 12:34) [11]


> Теперь осталось выкинуть приведение


Можно. Но тогда отключить warnings W1058, W1057, W1059, W1060 etc.  :)


 
Anatoly Podgoretsky ©   (2011-11-25 12:39) [12]

> Ega23  (25.11.2011 12:34:11)  [11]

Ну так бы и писал, что это с целью ...


 
Dennis I. Komarov ©   (2011-11-28 11:47) [13]

x: AnsiString

StrToInt(x)
StrToInt(string(x))


1. Имеем предупреждение ... AnsiStr -> string
2. Имеем лишнюю операцию приведение

При условии, что в x получаем целое число (в строке, десятичном формате и т.п.) как корректно?

З.Ы. [11] не учитываем... :)


 
Anatoly Podgoretsky ©   (2011-11-28 11:59) [14]

Не лишнею, а явную и не приведение, а преобразования



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

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

Наверх





Память: 0.47 MB
Время: 0.004 c
4-1254988754
teapo1989
2009-10-08 11:59
2012.03.04
Получение handle окон


2-1322215244
Aleks
2011-11-25 14:00
2012.03.04
Как определить событие OnClik в динамически созданном объекте Bu


6-1235561131
MALAN
2009-02-25 14:25
2012.03.04
Как перехватить API функции (Connect, Bind) и изменить их парамет


15-1320957003
Юрий
2011-11-11 00:30
2012.03.04
С днем рождения ! 11 ноября 2011 пятница


15-1320611403
Юрий
2011-11-06 23:30
2012.03.04
С днем рождения ! 7 ноября 2011 понедельник





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