2

Boost Date_Time ライブラリを使用して非常にばかげたプログラムを書いています。

int main(int srgc, char** argv) {
   using namespace boost::posix_time; 
   date d(2002,Feb,1); //an arbitrary date 
   ptime t1(d, hours(5)+nanosec(100)); //date + time of day offset 
   ptime t2 = t1 - minutes(4)+seconds(2);
   ptime now = second_clock::local_time(); //use the clock 
   date today = now.date(); //Get the date part out of the time 
}

コンパイルできません、コンパイラはタイプを認識しません...シリアル化などのBoostライブラリの多くの機能を使用しました...それらを正しくビルドし、/usr/local/libフォルダを見ると、 libboost_date_time.so があります (そのライブラリをビルドできたことを意味する良い兆候です)

コンパイルすると、次のように記述します。

g++ -lboost_date_time main.cpp

しかし、ライブラリを指定したときに表示されたエラーは、ライブラリを指定していないエラーと同じです。

これは何ですか?誰でも知っていますか?

エラーは

main.cpp: 関数 'int main(int, char**)': main.cpp:9: エラー: 'date' はこのスコープで宣言されていません main.cpp:9: エラー: 期待される ';' 'd' の前 main.cpp:10: エラー: 'd' はこのスコープで宣言されていません main.cpp:10: エラー: 'nanosec' はこのスコープで宣言されていません main.cpp:13: エラー: 期待される ';' 「今日」より前</p>

4

1 に答える 1

3

コードの内容はわかりませんが、次のようssに修飾するdateFeb、コードが有効になります。

boost::gregorian::date
boost::date_time::Feb

お役に立てれば。

于 2011-01-17T13:37:34.577 に答える