これは実際には必要ありませんが、疑問に思っていました:
任意の 2 つのオブジェクトについて、どちらが最初に作成されたかを C# で知る必要がありますか?
いいえ。オブジェクトに、オブジェクトが作成された日時を格納する読み取り専用プロパティがない限り、知る方法はありません。
オブジェクトのコンストラクター内に現在の日付/時刻を格納し(DateTime.Now
ほぼ確実に有用であるには不十分な精度であることに注意してください)、その情報を公開するための何らかの手段を提供する場合にのみ。
それが足りない-どこかでタイムスタンプstoring
を付けることもできます。
(これの最も明白な目的は、意味のあるデバッグの形式である可能性があります) log
それでも、完全に制御できない限り、任意のオブジェクトに対しては機能しません。
ほとんどのソリューションは実際のニーズに由来しますが、これが発生することはめったにありません。そのようなものが必要な場合はcustom factory
、サードパーティのオブジェクト用に作成したり、所有しているオブジェクト用に独自の実装を作成したりできます。