abstract 必要なヘッダ <boost/optional.hpp> 出来ること T型の値を表しているかもしれないし、いないかもしれない型optional<T> リファレンス en / jp sample #include <iostream> #include <boost/optional.hpp> using namespace std; using namespace boost; // √x を越えない最大の整数を返す関数 // ただし、xが負の数の時は、「不正です」という値を返す optional<int> sqrt( int x ) { if( x < 0 ) return optional<int>(); int i; for(i=0; i*i<=x; ++i) {} return optional<int>(i-1); } int main() { for(int j