In Winapi.Windows.pas of Delphi XE3, many C types that were formerly defined as PWideChar and PAnsiChar now are defined as MarshaledString and MarshaledAString respectively (e.g. PWChar, LPSTR):

  PWChar = MarshaledString;
  LPSTR  = MarshaledAString;

Indeed, in System.pas, MarshaledString and MarshaledAString are equivalent to PWideChar and PAnsiChar respectively,

  MarshaledString  = PWideChar;
  MarshaledAString = PAnsiChar;

but what is the background behind this decision? I mean, why Embarcadero should redefine such C string types?

有帮助吗?

解决方案

Embarcadero is working on a next-generation compiler for mobile development. The changes you see are related to that effort. The technical details are not public yet, so nobody with info about it is allowed to say anything further about it.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top