デルファイの次世代でのアンドディストリングサポートを有効にするための非公式のバイテストリングパッチ
Delphi 10.2-10.3のシステム
Delphi 10.1+ベルリンは、NextGenコンパイラ(Android、iOS、Linux)のUTF8STRINGとRAWBYTESTRINGを再導入します。しかし、略語とアンシストリングはまだ欠落しています。コンパイラは完全にサポートしていますが、システムの主要なアンダースコアで宣言されているため、使用できません。
DCUファイルにパッチを当てることにより、これらの隠しタイプにアクセスできるようになります。
10.2-10.3のユニットシステム
System.bytestrings.dcuのパスをコンパイラの検索パスに追加し、使用句にユニットを追加します。
DCUにHEXエディターがパッチされており、非表示の型にアクセスできるため、System.byTestrings.pasファイルはありません。
全体として、system.bytestringsは10.4+では必要ありません。互換性のために、次のように使用できます。
{$ if rtlversion <34.0} system.bytestrings、{$ endif} ...
delphi 10.4:https://www.embarcadero.com/products/rad-studio/whats-new-in-10-4-4-4-4-4-4-4-4-4-4-4-4-4
統一されたメモリ管理
Delphiメモリ管理は、オブジェクトメモリ管理の古典的な実装を使用して、モバイル、デスクトップ、サーバーのサポートされているすべてのプラットフォームで統一されています。自動参照カウント(ARC)と比較して、これにより、既存のコードとの互換性が向上し、コンポーネント、ライブラリ、エンドユーザーアプリケーションのコードが簡単になります。 ARCモデルは、すべてのプラットフォームの文字列管理およびインターフェイスタイプ参照のために残ります。 C ++の場合、この変更は、C ++でのDelphiスタイルのクラスの作成と削除が、ヒープに割り当てられたC ++クラスと同様に通常のメモリ管理に続くことを意味し、複雑さを大幅に減らします。