はい、見落とされがちなトリックが 1 つあります。初期化/ファイナライズコードがある
場合は、ユニット内で呼び出されるコードがなくても常に実行されます (ユニットは常に含まれています)。あなたはそうしないと思うでしょうが)。そのため、プロジェクトで不要なユニットを削除すると、顕著な違いが生じる可能性があります。
注目に値するもう 1 つの点は、2 つの異なるユニットに同名語があり、ユニット名を前に付けずにそれらを呼び出すときに、ユニットの順序によってコンパイラがどの識別子を選択するかが決まることです (これは常にベスト プラクティスとして実行する必要があります) 。
それ以外では、メイソンとロブが指摘したように、ユニットの順序は、それらがコンパイルされる順序と初期化/ファイナライズの順序に影響を与えます。
コードの洞察に関しては、不要なユニットを削除すると高速になりますが、プロジェクトで使用されているすべてのユニットが別のユニットを介して暗黙的に追加されたときに検索パスに頼るのではなく、プロジェクトで使用されているすべてのユニットが明示的に dpr に追加されている場合もグローバルになります。単位。