クラスの完了はどの順序で結果をもたらしますか?
-
22-08-2019 - |
質問
例:新しいユニットを作成し、その順序でコンストラクター、Destructor、Method1、Method2、Method3などのいくつかのメソッドを宣言し、Ctrl-Shift-Cをヒットします。 IDEはすべてのメソッド本体を自動的に作成しますが、順序はインターフェイスセクションで宣言されたとおりではなく混合されます。
さて、これは問題ではありませんが、その理由があります。宣言の順序でそれを行うよりも、それを混ぜるのは難しいようです。
それとも、私が見ることができない理にかなっているいくつかのルールがありますか?
解決
これは、メソッドがすでに配置されている方法に依存しているため、答えるのが少し複雑です。
それらがすでにアルファベット順に実装されている場合、それはそれを維持しようとします。 IDEがいかなる種類の順序を推測できない場合、ファイルの最後にドロップすることに頼ります。
慣習により、フォームにコメントを含める場合、別のしわがあります。{u003CClassName> }実装されたメソッドの最初のブロックの前に、そのコメントを使用して、その後のすべてのクラス実装を描写すると、メソッドをグループ化しようとします。
アルファベット順の順序は、上記の同じルールに従いますが、示されたコメントによって描かれた論理ブロックに新しい方法を挿入する場合があります。
真新しいクラスでクラス完了を使用すると、IDEが自動的にその描写コメントを生成することに気付くでしょう。
クラス完了を自動アレンジさせてメソッドを使用し、 Ctrl+シフト+upar メソッドの実装と宣言の間でナビゲートする鍵は、注文の重要性が低くなければなりません。
通常、上記のキーシーケンスを使用してクラスdeclにジャンプし、矢印キーを使用してDecl I Wantのメソッドに移動し、そのキーシーケンスを使用してすぐに到達します。
別の素晴らしいキーシーケンスはです Ctrl+alt+upar また Ctrl+alt+dnar これは、Method ImplからMethod ImbにFile-Orderにすばやくジャンプします。
他のヒント
デフォルトでは、メソッド名でアルファベット順に作成しようとすると確信しており、その後、同じ方法を使用してより多くのメソッドが追加された場合、これを維持しようとします。最終結果は、注文時に少しランダムなミックスになる可能性があります。
私の経験から、IDEが時々メソッドをアルファベット順に作成することがわかりますが、時には新しい方法をファイルの最後に追加するだけです。
IDEは、すべてをアルパハベティカル順序で作成しようとします。しかし、メソッドがシーケンスから外れている場合(たとえば、メソッドの名前を変更する)、混乱に陥ります。正確な動作はバージョンに依存しているようです。古いバージョンは、新しいメソッドをファイルの最後に任意の順序で追加するだけです。新しいバージョンは少し賢いように見えますが、私はまだ正確には解決していません。