On 14.04.2012 07:20, Martin Schreiber wrote:
On Friday 13 April 2012 20:32:23 Marcos Douglas wrote:
On Fri, Apr 13, 2012 at 2:59 PM, Martin Schreiber<mse00...@gmail.com>
wrote:
On Friday 13 April 2012 18:51:42 Michael Van Canneyt wrote:
Also:
Lazarus happened to choose UTF-8 as the encoding of their LCL.
By contrast, MSEGui chose UTF-16 as it's encoding.
In order to differentiate from other string types and encodings MSEgui
uses "msestring" in properties, variables and parameters. msestring is
defined as
"
type
msestring = UnicodeString;
"
But even so, we still can pass AnsiString<UTF8String, string,
whatever> to a function:
type
MyString = UnicodeString;
procedure Foo(const s: MyString);
begin
ShowMessage(s);
end;
procedure TForm1.Button1Click(Sender: TObject);
var
s: AnsiString;
begin
s := 'hi';
Foo(s);
end;
Yes. And if "s" is not in utf-8 but in current system encoding it even will be
translated correctly in FPC 2.6.0. ;-)
In that case it will also be translated correctly in 2.7.1. It will also
be translated correctly if the AnsiString is defined as
"AnsiString(CP_UTF8)" and has an UTF-8 encoded string in it.
Regards,
Sven
--
_______________________________________________
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus