Home C&C++函数库 c++ 语法 程序源码 Linux C库

std::

exception::what

公众成员函数  <exception>

C++98
virtual const char* what() const throw();

获取字符串标识异常
返回一个以null结尾的字符序列,该序列可用于识别异常。

返回值所指向的特定表示是由实现定义的。

作为虚函数,派生类可以重新定义此函数,以便返回特定的值。

☲  参数


none

☉  返回值



指向与异常相关内容的c-string对象的指针。

这保证至少在销毁获取异常的异常对象或调用异常对象的非const成员函数之前是有效的。

☣  示例



// exception::what
#include <iostream>       // std::cout
#include <exception>      // std::exception

struct ooops : std::exception {
  const char* what() const noexcept {return "Ooops!\n";}
};

int main () {
  try {
      throw ooops();
  } catch (std::exception& ex) {
      std::cout << ex.what();
  }
  return 0;
}

输出:
Ooops!

☂ 异常安全性



无抛出保证:该成员函数从不抛出异常。
这也适用于c++标准库中的所有派生类。

🍄  另请参阅



exception::exception 构造异常(公众成员函数)

联系我们 免责声明 关于CandCplus 网站地图