- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想根据 stdexcept 的逻辑错误创建自己的错误。我尝试了以下并面临错误,我的猜测是,这不是正确的做法。我无法在谷歌或以前的堆栈溢出问题上找到答案,请原谅我的菜鸟。
// Header
class My_custom_exception : public logic_error
{
public:
My_custom_exception(string message);
}
// Implementation
My_custom_exception::My_custom_exception(string message)
{
logic_error(message);
}
我不知道如何执行。它给了我以下错误:
exception.cpp: In constructor ‘My_custom_exception::My_custom_exception(std::__cxx11::string)’:
exception.cpp:3:56: error: no matching function for call to ‘std::logic_error::logic_error()’
My_custom_exception::My_custom_exception(string message)
^
In file included from /usr/include/c++/5/bits/ios_base.h:44:0,
from /usr/include/c++/5/ios:42,
from /usr/include/c++/5/ostream:38,
from /usr/include/c++/5/iostream:39,
from main.cpp:1:
/usr/include/c++/5/stdexcept:128:5: note: candidate: std::logic_error::logic_error(const std::logic_error&)
logic_error(const logic_error&) _GLIBCXX_USE_NOEXCEPT;
^
/usr/include/c++/5/stdexcept:128:5: note: candidate expects 1 argument, 0 provided
/usr/include/c++/5/stdexcept:120:5: note: candidate: std::logic_error::logic_error(const string&)
logic_error(const string& __arg);
^
/usr/include/c++/5/stdexcept:120:5: note: candidate expects 1 argument, 0 provided
In file included from main.cpp:2:0:
exception.cpp:5:21: error: declaration of ‘std::logic_error message’ shadows a parameter
logic_error(message);
^
exception.cpp:5:21: error: no matching function for call to ‘std::logic_error::logic_error()’
In file included from /usr/include/c++/5/bits/ios_base.h:44:0,
from /usr/include/c++/5/ios:42,
from /usr/include/c++/5/ostream:38,
from /usr/include/c++/5/iostream:39,
from main.cpp:1:
/usr/include/c++/5/stdexcept:128:5: note: candidate: std::logic_error::logic_error(const std::logic_error&)
logic_error(const logic_error&) _GLIBCXX_USE_NOEXCEPT;
^
/usr/include/c++/5/stdexcept:128:5: note: candidate expects 1 argument, 0 provided
/usr/include/c++/5/stdexcept:120:5: note: candidate: std::logic_error::logic_error(const string&)
logic_error(const string& __arg);
^
/usr/include/c++/5/stdexcept:120:5: note: candidate expects 1 argument, 0 provided
最佳答案
您必须在类的构造函数的初始化列表中调用基类的构造函数。
像这样:
My_custom_exception::My_custom_exception(string message):
logic_error(message)
{
}
关于c++ - 如何在 C++ 中创建自定义的 logic_error 派生类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44322444/
最近我从旧版本的 firebase 切换到最新版本。切换后,由于错误,我无法编译我的应用程序(即使不使用 firebase 代码) third_party/java/android/android_n
c++ 标准说 logic_error 可以在运行前检测到而 runtime_error 在运行时检测。 但是它是如何工作的呢?我的问题是如何在运行前检测 logic_error。你能给我举个例子吗?
我有一个通用数组类,如果它与非原始类型一起使用,它会抛出一个 logic_error。 模板类: #include #include #include using namespace st
如果你在代码中使用 std::logic_error 异常,你会在什么情况下使用它? 最佳答案 logic_error 是这些异常的基础:domain_error、invalid_argument、l
我希望能够捕捉到不同的 logic_errors并且能够区分它们。我能否以某种方式将附加参数传递给稍后要捕获的逻辑错误。这个想法是我需要打印。现在我只是捕捉到 stof 的默认错误可以返回。 “抱歉无
我的 cs 类任务是创建两个继承自 std::logic_error 的自定义异常类:OverflowingSwimmingPoolException 和 UnderflowingSwimmingPo
我的 C++ 程序以 std::logic_error 退出,我想追踪导致它的源代码行。我该怎么做? TBH,我正在使用 gdb,使用 g++ -g 来添加调试信息。我只能得到这些消息: 此应用程序已
我正在寻找某人对 std::logic_error 用法的意见,而不是使用复杂的嵌套 if/elseif 列表返回 true/false。 我想从很多类似的函数中移动,如下面的函数 bool vali
我想根据 stdexcept 的逻辑错误创建自己的错误。我尝试了以下并面临错误,我的猜测是,这不是正确的做法。我无法在谷歌或以前的堆栈溢出问题上找到答案,请原谅我的菜鸟。 // Header clas
我使用 boost spirit x3 创建了一个语法。在测试我生成的解析器时,我认识到存在解析器抛出以下异常的情况: terminate called after throwing an insta
我已经使用一个类来编写一些代码来显示一个盒子的尺寸。我这样做是通过在 toString() 方法中输出,它似乎可以正常工作,但是当我运行该程序时,出现以下错误: Height: 1 Width: 1
我正在尝试使用 C++ 和 MongoDB 完成一些工作。到目前为止,出现了无数问题,但我都挺过来了。 然后我得到了这个: terminate called after throwing an ins
让我们看一下派生自 std::logic_error 的类: std::out_of_range 当参数超出范围时抛出。 std::length_error 当指定长度的参数超出支持的值时抛出。 st
我在这个程序中收到 std::logic_error: basic_string::_s_construct null not valid。我该如何解决?我已经尝试过 previously poste
我正在尝试实现自定义异常层次结构并允许适当的 std::* 被代码捕获。 class my_exception : public virtual std::exception { }; class m
以下是说明: 在第 10 章中,clockType 类被设计用来在程序中实现一天中的时间。除了小时、分钟和秒之外,某些应用程序可能需要您存储时区。 从类 clockType 派生类 extClockT
我最近看到,如果命令行输入不可解析,boost program_options 库会抛出 logic_error。这挑战了我对 logic_error 与 runtime_error 的假设。 我认为
我正在尝试检查输入字符串是字母数字还是大写或空。如果输入字符串在上述出现故障的字符串中,我只想返回 false/0 否则与工作正常的程序的其余部分一起工作。我的程序块有问题: std::string
我一直在尝试将 cfg 读入多重链接列表,但我收到此错误,请有人帮忙。它不断给出这个错误。我不认为有什么错误。请检查这段代码并告诉我哪里有错误导致程序崩溃并出现图片中所附的异常 #include
我不确定是什么导致了这个问题,我正在创建一个井字游戏,您可以在其中与计算机对战。 我没有尝试过任何东西,因为我不知道这个错误是什么意思。 #include #include #include #
我是一名优秀的程序员,十分优秀!