COleDateTime クラス
更新 : 2008 年 7 月
OLE オートメーションで使用される DATE データ型をカプセル化します。
class COleDateTime
解説
COleDateTime には、基本クラスはありません。
このデータ型は、OLE オートメーションの VARIANT データ型で使用できる型の 1 つです。COleDateTime 値は、絶対日付と時刻を表します。
DATE 型は浮動小数点値として実装されます。日数は 1899 年 12 月 30 日の午前 0 時から数えられます。次の表は、いくつかの日付とそれに関連付けられた値を示しています。
日付 |
値 |
---|---|
1899 年 12 月 29 日午前 0 時 |
-1.0 |
1899 年 12 月 29 日午前 6 時 |
-1.25 |
1899 年 12 月 30 日午前 0 時 |
0.0 |
1899 年 12 月 31 日午前 0 時 |
1.0 |
1900 年 1 月 1 日午前 6 時 |
2.25 |
メモ : |
---|
時刻を確認するには、数値の小数部の絶対値を計算します。 |
COleDateTime クラスは、西暦 100 年 1 月 1 日から、9999 年 12 月 31 日までの日時を処理します。COleDateTime クラスはグレゴリオ暦を使用し、ユリウス暦の日付をサポートしません。COleDateTime では夏時間は無視されます。詳細については、「日付と時刻 : オートメーションのサポート」を参照してください。
メモ : |
---|
1900 年以降の日付についてのみ、%y 形式を使用して 2 桁の年を取得できます。1900 年より前の日付に対して %y 形式を使用すると、ASSERT エラーが生成されます。 |
この型は、日付だけ、または時刻だけの値を表すためにも使用されます。通常は、日付 0 (1899 年 12 月 30 日) は時刻だけの値として使用され、時刻 00:00 (深夜) は日付だけの値として使用されます。
100 未満の日付を使用して COleDateTime オブジェクトを作成した場合、その日付は受け付けられますが、以降の GetYear、GetMonth、GetDay、GetHour、GetMinute、および GetSecond の呼び出しは失敗し、-1 が返されます。以前は、2 桁の日付を使用できましたが、MFC 4.2 以降では 100 以上の日付を使用する必要があります。
この問題を回避するには、4 桁の年数を指定します。次に例を示します。
COleDateTime mytime(1996, 1, 1, 0, 0, 0);
COleDateTime 値の基本的な算術演算には、コンパニオン クラス COleDateTimeSpan が使用されます。COleDateTimeSpan 値は、時間間隔を定義します。これらのクラス間の関係は、CTime クラスと CTimeSpan クラスの関係に似ています。
COleDateTime クラスおよび COleDateTimeSpan クラスの詳細については、「日付と時刻 : オートメーションのサポート」を参照してください。
必要条件
**ヘッダー :**ATLComTime.h
参照
参照
その他の技術情報
履歴の変更
日付 |
履歴 |
理由 |
---|---|---|
2008 年 7 月 |
2 桁の年の日付を取得する場合の警告を追加 |
コンテンツ バグ修正 |