C99 の fenv.h は C++11 に存在しますか? fesetround のような関数を使用する他の方法はありますか? もしかしてブースト?
gcc 4.7.2 は次のコードをコンパイルします。
#include <cfenv>
int main() {}
http://liveworkspace.org/code/ffbd8e8a24633c7e74f7bcead3b1a287
C99 の fenv.h は C++11 に存在しますか? fesetround のような関数を使用する他の方法はありますか? もしかしてブースト?
gcc 4.7.2 は次のコードをコンパイルします。
#include <cfenv>
int main() {}
http://liveworkspace.org/code/ffbd8e8a24633c7e74f7bcead3b1a287
fenv.h
fromC99
は に存在しC++11
ますか?
はい、そうです。
参照:
26.3 The floating-point environment [cfenv]
Standard C++11 26.3.1 Header <cfenv> synopsis [cfenv.syn]
のような関数を使用する他の方法はあります
fesetround()
か? もしかしてブースト?
関数はC++11 でfesetround()
既に提供されています。
また、C 標準ヘッダーとの下位互換性を提供するために、C++11 にも存在します。それは以下でカバーされています: cfenv
fenv.h
D.5 C standard library headers [depr.c.headers]
fenv.h
またはの使用の違いは何cfenv
ですか?
インクルードcfenv
すると、シンボル名がstd
名前空間にインポートされ、場合によってはグローバル名前空間にインポートされます。インクルードfenv.h
すると、シンボル名がグローバル名前空間にインポートされ、場合によっては名前空間にインポートされstd
ます。
はい、そうです。cfenv
正しいヘッダーのようで、C++11 で追加されたばかりです。