質問にはタイトルが入ります。私のクラスでは、 'never'というキーワードを使っていくつかのプロパティを宣言していますので、これらのプロパティの値はコンストラクタで一度しか設定できません。しかし、私は次のエラーを取得する:アクセスエラーをスローでマークされた'never'プロパティはカウンターの内部に設定することはできません
class TreeAbility
{
public var id(default, never):String;
public var maxLvl(default, never):Int;
public function new(id:String, maxLvl:Int)
{
Assert.assert(maxLvl > 0);
this.id = id; (*)
this.maxLvl = maxLvl; (*)
this.currentLvl = 0;
}
}
ライン(*):
は、問題のあるコードの
例を記述するためのフィールドまたは識別子%名%にアクセスできません
_never_サイトの古いバージョンで詳しく説明しました。また、コンストラクタ内の書き込み不可能なプロパティに値を代入する例も含まれています。 でも、これまでのところいつかその方法で働いていたかもしれません。 http://old.haxe.org/ref/properties – Gulvan
4.0.0の変更履歴を読んでください。今、私は、コンストラクターでstatic never-writeプロパティーしか設定できないという前提を持っています。 – Gulvan
古いWebサイトでは、「never」プロパティーを使用している例は「numItems」に書き込まれていません。 "container.numItems"はシーンの裏側で "get_numItems()"を呼び出しますが、最終コードのインスタンスには "numItems"という変数は存在しません。 –