0

如何将方法的参数指定为实现特定接口的任何类?

这在目标 c 中相当常见。

4

2 回答 2

3

标准 C++ 中没有接口,但我们可以很容易地模拟它们:

class IComparable
{
protected:
    IComparable() {};
public:
    virtual ~IComparable() = 0 {};
    virtual int Compare(const IComparable& other) const = 0;
};

我们无法实例化这个类。它实际上是一个接口。然后,您可以从中派生具体类。

于 2012-08-12T16:29:01.400 回答
0

如果您有一个名为 的“接口”或抽象基类Base,那么可以接受任何实现该接口的对象的函数如下所示:

void fn(Base& obj) {
    /*use Base functions on obj...*/
}
于 2012-08-12T16:24:11.530 回答