若要檢視英文版的文章,請選取 [原文] 核取方塊。您也可以將滑鼠指標移到文字上,即可在快顯視窗顯示英文原文。
譯文
原文

time_get::get_date

 

將字串剖析為 strftimeX 規範所產生的日期。


      iter
      _
      type get
      _
      date(
   iter_type _First, 
   iter_type _Last,
   ios_base& _Iosbase, 
   ios_base::iostate& _State, 
   tm* _Pt
) const;

_First

輸入定址的 Iterator 要轉換的序列的開頭。

_Last

輸入定址的 Iterator 要轉換的序列結尾。

_Iosbase

格式旗標,則集合表示貨幣符號是選擇性的;否則,需要。

_State

設定資料流狀態的適當位元遮罩項目,根據可能的選取作業成功。

_Pt

out 的指標要存放日期資訊。

輸入定址的 Iterator 在輸入欄位之外的第一個項目。

成員函式會傳回 do_get_date(_First_Last_Iosbase_State_Pt)。

請注意幾個月計數從 0 到 11。

// time_get_get_date.cpp
// compile with: /EHsc
#include <locale>
#include <iostream>
#include <sstream>
#include <time.h>
using namespace std;
int main( )
{
   locale loc;
   basic_stringstream< char > pszGetF, pszPutF, pszGetI, pszPutI;
   ios_base::iostate st = 0;
   struct tm t;
   memset(&t, 0, sizeof(struct tm));

   pszGetF << "July 4, 2000";
   pszGetF.imbue( loc );
   basic_istream<char>::_Iter i = use_facet <time_get<char> >
   (loc).get_date(basic_istream<char>::_Iter(pszGetF.rdbuf( ) ),
            basic_istream<char>::_Iter(0), pszGetF, st, &t);

   if ( st & ios_base::failbit )
      cout << "time_get("<< pszGetF.rdbuf( )->str( )<< ") FAILED on char: " << *i << endl;
   else

      cout << "time_get("<< pszGetF.rdbuf( )->str( )<< ") ="
      << "\ntm_sec: " << t.tm_sec
      << "\ntm_min: " << t.tm_min
      << "\ntm_hour: " << t.tm_hour
      << "\ntm_mday: " << t.tm_mday
      << "\ntm_mon: " << t.tm_mon
      << "\ntm_year: " << t.tm_year
      << "\ntm_wday: " << t.tm_wday
      << "\ntm_yday: " << t.tm_yday
      << "\ntm_isdst: " << t.tm_isdst
      << endl;
}
time_get (2000 年 7 月 4 日) =
tm_sec:0
tm_min:0
tm_hour:0
tm_mday:4
tm_mon:6
tm_year:100
tm_wday:0
tm_yday:0
tm_isdst:0

需求

標題: <地區設定>

命名空間: std

顯示: