Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class X
- {
- public:
- virtual ~X() = 0;
- template<typename T>
- virtual T getThis()
- {
- return *this;
- }
- };
- class Y : public X
- {
- public:
- ~Y()
- {
- }
- virtual Y getThis() override
- {
- return *this;
- }
- }
- X* xvar = new Y();
- decltype(*xvar->getThis())* yvar = &(*xvar->getThis());
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement