std::exception的带参数构造 为什么用g++编译通不过

绝不原创的飞龙
人工智能领域优质创作者
博客专家认证
2013-11-16 11:53:35
expbeaut.cpp:97:44: 错误: 对‘std::exception::exception(const char [20])’的调用没有匹配的函数
expbeaut.cpp:97:44: 附注: 备选是:
In file included from /usr/include/c++/4.7/ios:40:0,
from /usr/include/c++/4.7/ostream:40,
from /usr/include/c++/4.7/iostream:40,
from expbeaut.cpp:1:
/usr/include/c++/4.7/exception:65:5: 附注: std::exception::exception()
/usr/include/c++/4.7/exception:65:5: 附注: 备选需要 0 实参,但提供了 1 个
/usr/include/c++/4.7/exception:62:9: 附注: constexpr std::exception::exception(const std::exception&)
/usr/include/c++/4.7/exception:62:9: 附注: no known conversion for argument 1 from ‘const char [20]’ to ‘const std::exception&’
...全文
343 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
todd_leftcode 2013-11-16
  • 打赏
  • 举报
回复
不要用那个, 那是MS搞得巫术, 不标准。
max_min_ 2013-11-16
  • 打赏
  • 举报
回复
调用参数不匹配呢!部分源码贴出来看看吧@!
todd_leftcode 2013-11-16
  • 打赏
  • 举报
回复
引用 4 楼 wizardforcel 的回复:
[quote=引用 2 楼 todd_leftcode 的回复:] 不要用那个, 那是MS搞得巫术, 不标准。
g++也不是完全的c++标准 是gnu自己的标准[/quote] g++的巫术也一样不要用。 好吧,这样说确实不准确, 用用倒也无妨。 std::exception倾向于做为所有异常的基类,人这个角度讲它不应该有任何数据成员,只有非常虚的东西才有可能适合所有情况。 自己定义一个异常类,从std::exception继续。或者使用 runtime_error, logic_error(说实话,我对这两个标准异常类不是很感冒)
  • 打赏
  • 举报
回复
引用 2 楼 todd_leftcode 的回复:
不要用那个, 那是MS搞得巫术, 不标准。
g++也不是完全的c++标准 是gnu自己的标准
  • 打赏
  • 举报
回复
引用 2 楼 todd_leftcode 的回复:
不要用那个, 那是MS搞得巫术, 不标准。
有什么替代的解决方案没有= =

65,186

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧