BOOST_SCOPED_ENUM_START(copy_option)
{fail_if_exists, overwrite_if_exists};
BOOST_SCOPED_ENUM_END
という記述にぶち当たった。実は、boost::filesystem::overwrite_if_exists と指定したら、コンパイルエラーで怒られて、えー?じゃ何を指定すればいいんだわさ???となったわけです。
ご存知のとおり、enum は scope じゃないので、コードを書く上で、いろんなものが、ごっちゃり混ざって美しくない。て訳で、BOOST_SCOPED_ENUM_START -> BOOST_SCOPED_ENUM_END で効率よくスコープ付きの enum を定義しようってことらしい。
boost::filesystem::copy_option::overwrite_if_exists で、めでたくコンパイルも通りました。
0 件のコメント:
コメントを投稿