0

質問が曖昧でわかりにくい場合は、お詫び申し上げます。これは Delphi Prism .NET 用です。

長方形型の境界と呼ばれる変数を持つ基本クラスがあります。このクラスから別のクラスが派生または継承され、基本クラスの変数境界にアクセスできます。設計時に、コンパイラは基本クラスの境界変数を認識しますが、デバッグ時には、基本クラスの変数の境界に対して不明なエラーが発生し続けます。そのため、プログラムは正常にコンパイルされますが、正しく実行されません。

基本クラスと変数は次のとおりです。

  TControlObject = public class
    bounds:Rectangle;     <<=========This is the Variable in question
  private
  protected
  public
  end; 

派生クラスは次のとおりです。

  TGateControl = class(TControlObject)
    fInputCount:SmallInt;
  private
  protected
  public
    constructor (theForm:Form);
  end;

基本クラス変数を持つ派生クラスのコンストラクターは次のとおりです。

constructor TGateControl(theForm:Form);
begin
  inherited constructor(theForm);
  fInputCount := 2;
  bounds.width := bounds.Right-(bounds.left+(4 * CGridSize)); <<=======Here is where unknown identifier error is raised for bounds variable.
  bounds.Height := bounds.Bottom-(bounds.top+(3 * CGridSize));<<=======Here is where unknown identifier error is raised for bounds variable.
end;

私は何を間違っていますか?ありがとう、

4

1 に答える 1

1

派生クラスから見えるようにするには、クラスの保護されたセクションで変数を宣言する必要があります。可視性を明示的に示さずに宣言すると、それをプライベートにしたいと想定され、プライベートフィールドは派生クラスに表示されません。

于 2011-10-24T13:50:40.233 に答える