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 34 35
|
#include <iostream>
class Base {
};
class Range {
private:
Base* _val;
public:
Range(Base* val): _val(val){};
};
class Inter : public Base {
private:
int more_properties;
public:
};
class Twin : public Inter {
private:
Range _casier;
char const* const _val;
public:
Twin(char const* const val): _casier(Range(this)), _val(val)
{
std::cerr << val << " " << (long)this << std::endl;
}
};
int main(int argc, char **argv) {
Twin("a");
new Twin("b");
Twin* cc = new Twin("c");
} |
Partager