私は、そのサブクラスの静的関数で使用する変数$ xを持つクラスを持っています。サブクラス内の静的関数に変数を渡す
0
A
答えて
0
静的メソッド内で参照されるオブジェクトがないため、これは明らかに不可能です。これは、静的メソッドの全ポイントです。つまり、インスタンス化されたオブジェクトとは独立して使用できることです。
は、あなたが明示的として値を渡すことができます。しかし、このようなオブジェクトを使用せず、あなたは明らかにあなたが選んだあなたの状況に依存して一つの特性
は、いくつかの選択肢がありますが、持っていません引数$x
...function status($x)
)の場合、people
というインスタンス化されたオブジェクトのプロパティにアクセスできます。クラス内には
static const
というプロパティを宣言できます。その場合は、明らかに静的クラスのメソッドからアクセスできます。しかし、明らかに初期化できる定数ですが、時間の経過とともにその値を変更することはできません。このプロパティは、の外部にあるのように設計することができます。はい、これは明らかであり、クラスデザインのポイントを変更します。しかし、あなたはすでにあなたがに走った問題が示すと言うことができる一般的なものにチャンスは、このメソッドは、すべての任意のインスタンス化されたオブジェクトに依存してはならないということです静的メソッド...
を使用しようとするので、そのクラスの設計決定的なものではなく、現在の状態ではそれ自体意味をなさない。あなたはクラスを再設計しなければならないでしょう(あるいはより大きなアーキテクチャかもしれません)。
「なぜどうすればメソッドstatus()
を静的にしたいですか?
関連する問題
- 1. 静的変数を関数に渡す
- 2. 関数内静的変数と静的クラス変数の比較
- 3. 関数内の静的変数
- 4. 静的関数内の非静的パラメータ
- 5. 静的変数内部の静的メソッド
- 6. 静的関数内の動的変数名
- 7. 関数内静的変数にアクセスする
- 8. 静的変数を返すメンバ関数
- 9. コード内の静的変数
- 10. マクロ内の静的変数
- 11. 静的変数と引数渡し
- 12. 静的クラス関数内で静的変数をインクリメントできません
- 13. 静的親メソッドのサブクラス定数にアクセス
- 14. 関数を静的に変換する
- 15. 静的変数は関数のローカル
- 16. C++メンバ関数のアクセスプライベート静的変数?
- 17. インライン関数の静的変数
- 18. 静的変数と関数の問題
- 19. jQuery - 関数内の変数を別の関数に渡す
- 20. 関数内でPHP静的クラス変数を扱う方法
- 21. C++の静的な内部関数とC++の静的関数の違いは?
- 22. 目的関数Cの変数に変数を渡す
- 23. 静的変数に関する質問
- 24. 目的C - カテゴリ内の静的変数
- 25. 静的な値を動的Javascriptに渡す関数
- 26. 静的constexpr変数vs関数
- 27. ノードJS、静的関数/変数ベストプラクティス
- 28. PHP静的変数をクラス内の他の変数に使用
- 29. 関数内の静的変数にプロパティを設定する方法
- 30. Restler - 変数をサブクラスに渡す方法
ありがとう、有用な情報、今私はそれが静的な機能を持つことを意味しない知っている。 – Duveral