c++ - 继承抛出的纯虚函数

标签 c++ inheritance virtual throw

如标题所示,我想从一个抛出异常的类函数创建一个继承的类函数。基类中的函数如下所示:

template <typename T>
class IQueue {
public:
virtual T dequeue()throw(…) = 0;
}

请注意,我不能修改它,因为它是用于类(class)的。我应该如何在转移的类中声明该函数?我试过这样:

template <typename T>
class Queue : public IQueue < T >{
public:
virtual T dequeue()throw(…) {}
}

但我不允许运行它,它给我一个指向基类中的声明的错误。所以我认为我没有按我应该的方式覆盖它。

这些是我遇到的错误:

unexpected token(s) preceding ';'
syntax error : indentifier '...'
unable to recover from previous error(s); stopping compilation".

顶部的两个在 IQueue.h 中,最后一个在 xlocale 中。 我正在使用 Visual Studio 2013。

最佳答案

您的问题是由于使用了 Unicode HORIZONTAL ELLIPSIS字符 ... 而不是 ...。然而,即使是 throw(...) 也没有在我的系统上编译。该类在其声明末尾还缺少一个分号,但尚不清楚这是否只是上传到 Stack Overflow 时的一个错误。

您提到您从作业描述中复制了类(class)。不管这是从哪里复制的,都没有正确地格式化文本,这应该由教授/管理作业的人来解决。

另外,一般来说,使用异常规范被认为是 bad idea无论如何,在 C++ 中。

关于c++ - 继承抛出的纯虚函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35759583/

相关文章:

c++ - 异常消息为空

class - 类方法的可见细化

javascript - 在 Javascript ECMA6 中扩展对象时出现问题

Apache 2 站点可用配置

C++:依赖跟踪工具(逆向工程)

c++ - 来自设备纹理阵列的 NVIDIA CUDA 视频编码器 (NVCUVENC) 输入

c++ - 有没有办法修复因未正确关闭 boost::archive::binary_oarchive 而损坏的文件?

c# - C#中的父子继承管理

PHP 5.2 类虚拟静态方法

c++ - 强制派生类调用基函数