在C++中,要取得optional
對象中的值,可以使用value()
方法來獲取值。該方法會返回一個引用,如果optional
對象為空,則會拋出std::bad_optional_access
異常。另外,也可以使用operator*
和operator->
來獲取值,這兩種方式會在對象為空時導致未定義的行為,因此應謹慎使用。示例如下:
std::optional<int> opt = 42;
// 使用value()方法獲取值
int value = opt.value();
std::cout << "Value: " << value << std::endl;
// 使用operator*獲取值
int value2 = *opt;
std::cout << "Value: " << value2 << std::endl;
// 使用operator->獲取值
int value3 = opt->value();
std::cout << "Value: " << value3 << std::endl;