@zimenglan
2014-11-25T13:08:16.000000Z
字数 755
阅读 4827
C++
谁可以帮忙解答下,为什么这样做不行(代码里面注有error
的方法)?
说是不能使用继承成员
如果我想实现这样的效果, 该怎么做?
#include <iostream>
#include <vector>
#include <algorithm>
#include <string>
#include <map>
using namespace std;
class A {
public:
A() {}
~A(){}
virtual void printInfo();
void printInfo1();
protected:
virtual void printInfo2();
void printInfo3();
int a;
};
class B : public A {
public:
B() {
A::a = 5;
a = 10;
b = 8;
}
void print_a() {
std::cout << "parentClass: " << A::a << std::endl;
std::cout << "subClass: " << a << std::endl;
}
~B(){}
protected:
int b;
int a;
};
// error
void B::printInfo() {
std::cout << "info from B - 0" << std::endl;
}
// error
void B::printInfo1() {
std::cout << "info from B - 1" << std::endl;
}
// error
void B::printInfo2() {
std::cout << "info from B - 2" << std::endl;
}
// error
void B::printInfo3() {
std::cout << "info from B - 3" << std::endl;
}
int main() {
B b;
b.print_a();
return 0;
}