1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | #include <iostream> using namespace std; template<class T> class CBase { public: template <class T2> CBase(const T2 &x) : _var(x) {;} template <class T2> CBase (const CBase<T2> &x) {_var = x.var();} ~CBase() {;} T var() const {return _var;} protected: T _var; }; template<class T> class CDerived : public CBase<T> { public: template <class T2> CDerived(const T2 &x) : CBase<T>(x) {;} template <class T2> CDerived(const CDerived<T2> &x) : CBase<T>(x.var()) {;} template <class T2> CDerived (const CBase<T2> &x) : CBase<T>(x) {;} ~CDerived() {;} }; int main() { CBase<double> bd(3); CBase<int> bi(bd); // <- No problem CDerived<double> dd1(3); CDerived<double> dd2(dd1); CDerived<int> di(dd1); // <- The problem is here return 0; } |
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnRlbXBsYXRlPGNsYXNzIFQ+IGNsYXNzIENCYXNlCnsKICAgIHB1YmxpYzoKICAgICAgICB0ZW1wbGF0ZSA8Y2xhc3MgVDI+IENCYXNlKGNvbnN0IFQyICZ4KSA6IF92YXIoeCkgezt9CiAgICAgICAgdGVtcGxhdGUgPGNsYXNzIFQyPiBDQmFzZSAoY29uc3QgQ0Jhc2U8VDI+ICZ4KSB7X3ZhciA9IHgudmFyKCk7fQogICAgICAgIH5DQmFzZSgpIHs7fQogICAgICAgIFQgdmFyKCkgY29uc3Qge3JldHVybiBfdmFyO30KICAgIHByb3RlY3RlZDoKICAgICAgICBUIF92YXI7Cn07Cgp0ZW1wbGF0ZTxjbGFzcyBUPiBjbGFzcyBDRGVyaXZlZCA6IHB1YmxpYyBDQmFzZTxUPgp7CiAgICBwdWJsaWM6CiAgICAgICAgdGVtcGxhdGUgPGNsYXNzIFQyPiBDRGVyaXZlZChjb25zdCBUMiAmeCkgOiBDQmFzZTxUPih4KSB7O30KICAgICAgICB0ZW1wbGF0ZSA8Y2xhc3MgVDI+IENEZXJpdmVkKGNvbnN0IENEZXJpdmVkPFQyPiAmeCkgOiBDQmFzZTxUPih4LnZhcigpKSB7O30KICAgICAgICB0ZW1wbGF0ZSA8Y2xhc3MgVDI+IENEZXJpdmVkIChjb25zdCBDQmFzZTxUMj4gJngpIDogQ0Jhc2U8VD4oeCkgezt9CiAgICAgICAgfkNEZXJpdmVkKCkgezt9Cn07CgppbnQgbWFpbigpCnsKICAgIENCYXNlPGRvdWJsZT4gYmQoMyk7CiAgICBDQmFzZTxpbnQ+IGJpKGJkKTsgLy8gPC0gTm8gcHJvYmxlbQogICAgQ0Rlcml2ZWQ8ZG91YmxlPiBkZDEoMyk7CiAgICBDRGVyaXZlZDxkb3VibGU+IGRkMihkZDEpOwogICAgQ0Rlcml2ZWQ8aW50PiBkaShkZDEpOyAvLyA8LSBUaGUgcHJvYmxlbSBpcyBoZXJlCiAgICByZXR1cm4gMDsKfQ==
-
upload with new input
-
result: Success time: 0s memory: 2892 kB returned value: 0
-
result: Success time: 0s memory: 2780 kB returned value: 0


