Hello, Dmitry!
You wrote  on Wed, 25 Feb 2009 18:55:45 +0300:

>> Есть варианты кода, когда на 2007 работает и все ок, а на 2009 уже нет,
>> хотя
>> компилится - особенно на стыке PChar/string/AnsiString.
>> http://pnv82.blogspot.com/search/label/d2009

KD> А что делает вот ета конструкция -
KD> PAnsiChar(AnsiString(SomeStrings[I])) ?

KD> Если это просто голый указатель на строку, к которому (принудительно?)
KD> приводится временный объект AnsiString и сохраняемый в RecType::AnString, то
KD> тут можно только погыгать над этими детскими граблями.

Ну, приведение в стиле PChar(<some delphi string>) было вполне себе частым и популярным вариантом. И при конвертации кода заменилось на анзишные аналоги. И нигде не щелкнуло, что это уже не просто указатели, особенно при том, что в 2007 это таки просто указатели...

Так что грабли стали достаточной высоты лишь с юникодом :))

--
-=Технику безопасности при работе на шлифовальных станках я знаю, как свои три пальца=- With best regards, Nikolay Ponomarenko

Ответить