2013年2月10日日曜日

C++に置ける定数π(円周率)の使い方

私が気に入っている方法は、

#include <cmath>
namespace { constexpr float pif = std::atan(1) * 4; }
#include <iostream>
int main() { std::cout << pif; }

constexpr逆正接を組み合せる方法。なんともスマートにC++11&数学している。美しい(╹◡╹)

この方法はStackOverflowのコメントで知ってから現在も愛用中。

ちなみに以前使っていた方法は、

#include <boost/math/constants/constants.hpp>
namespace { const float pif = boost::math::constants::pi<float>(); }
#include <iostream>
int main() { std::cout << pif; }

Boostを使う方法。C++11水準に到達していない処理系では今も使う。

0 件のコメント:

コメントを投稿