cppのoptional

cppのoptionalの使い方

タグ optional


概要

  • #include <optional>が必要
  • 型はstd::optional<T>
  • 値がある場合は、t.values()で実態を取り出すことができる
  • 無いを示すのがstd::nullopt

具体例

#include <iostream>
#include <optional>
using namespace std;

optional<int> multiple(int x) {
    if(x >= 0)
        return x;
    else
        return nullopt;
}

int main() {
    auto ret0 = multiple(2);
    if(ret0)
        cout << ret0.value() << endl;
    auto ret1 = multiple(-1);
    if(!ret1)
        cout << "nulloptです" << endl;
}

参考