Delphi中的静态属性



我有一个静态属性日历的问题。

type
  TDateTime = class(TObject)
  private
  class var fcalendar: TCalendar;
  class procedure SetCalendar(const Value: TCalendar);
  public
  class property Calendar: TCalendar read fcalendar write SetCalendar;
 end;
implementation
  class procedure TDateTime.SetCalendar(const Value: TCalendar);
  begin
    if Value <> nil then
    begin
      TDateTime.fcalendar := Value;
    end;
  end;

错误发生在第7行

E2355类属性访问器必须是类字段或类静态方法

问题出在setter上,错误消息解释了您需要如何修复它:将其标记为静态。这确实意味着你不能使用虚类方法作为访问器,但你并没有这样做,所以这应该不是一个问题。

class procedure SetCalendar(const Value: TCalendar); static;

相关内容

  • 没有找到相关文章

最新更新