クラスヘルパーは、新しいメソッドを現在のスコープに導入します。クラスヘルパーがスコープ内にない場合、そのクラスが助けるクラスであってもそのメソッドは有効になりません。だから、それを動作させるための第一歩は、プログラムの現在のポイントで有効になるクラスヘルパーであることを保証することです。
この要件を満たしてもまだ動作しない場合、おそらくデバッガはクラスヘルパーを認識しないことがあります。とにかくハックだと思うので、デバッガがそれらを認識しなかったら私はあまり驚かないでしょう。最終的に、クラスヘルパーは文法的な砂糖です。
function TStringList_DoSth(SL: TStringList): Boolean;
方法のあなたの現在の実装を使用してその機能を記述し、あなたのクラスのヘルパーを実装するための関数を使用します:
これは次のように上記のクラスヘルパーは、同じように簡単に、スタンドアロン関数として書かれている可能性が
function TslHelper.DoSth: Boolean;
begin
TStringList_DoSth(Self);
end;
通常のコードでclass-helperメソッドを引き続き呼び出すことはできますが、デバッガのスタンドアロン関数にフォールバックできます。
私はそれを試してもうまく動作します。あなたはどんなエラーを出していますか? –
Ctrl + F7を押して、評価/変更ウィンドウの 'someStringList.DoSth' と入力しましたか? – m0f0