我们可以在c ++中删除子类中父类的成员函数吗?

时间:2018-01-15 17:39:43

标签: c++ class

如果我们不想在子类中使用继承的函数,我们可以从该子类中删除该函数吗? 如果是,那么它是否可以在其他子课程中访问? 我搜索过但没有得到与我的问题有关的任何内容。

我已经尝试了但它给出了#34;错误C2238:'之前的意外令牌;' "

示例代码是:(它只是一个示例代码)

#include <iostream>
using namespace std;

class A
{
public:
    int num;
    A()
    {
        cout << "Default constructor of A class"<< endl;
    }
    A(int a)
    {
        num = a;
    }
    virtual void print()
    {
        cout << "print"<< endl;
    }
};
class B: public A
{
public:
    int val;
    B()
    {
        cout << "Default constructor of B class"<< endl;
    }
    B(int b, int z) : A(z)
    {
        val = b;
    }
    **using A :: print() = delete;**

};
class C : public A
{
public:
    int count;
    C()
    {
        cout << "Default constructor of C class"<< endl;
    }
    C(int r, int s) : A(s)
    {
        count = r;
    }

};
class D : public C, public B
{
    int cal;
    D()
    {
        cout << "Default constructor of D class"<< endl;
    }
    C(int r, int s) : A(s) 
    {
        count = r;
    }

};

0 个答案:

没有答案