我是C++
开发人员,我正在迁移到python
,我阻止:
def __init__(self): # definition of constructor
super(ClassName,self).__init__()
但我不知道第二行的任何想法。你能解释一下第二行C++
吗?
C++ 中没有精确的等价物。请阅读这个以获得很好的解释:-)
在非常简单(单继承)的情况下,您给出的行只是调用父类的__init__
方法。ClassName
相当于这个 c++ 代码:
#include <iostream>
using std::cout;
class parent {
protected:
int n;
char *b;
public:
parent(int k): n(k), b(new char[k]) {
cout << "From parent class\n";
}
};
class child : public parent {
public:
child(const int k) : parent(k){
cout << "From child class\n";
delete b;
}
};
int main() {
child init(5);
return 0;
}