#include <iostream>
using namespace std;
class UiControl
{
protected:
UiControl()
{
//The constructor UiControl is private, only objects of subclasses can be created
}
public:
int x;
int y;
int width;
int height;
enum TypeTag { BUTTON, TEXT_FIELD };
TypeTag typeTag;
};
class Button : public UiControl
{
public:
Button() : UiControl() {}
void foo() {
auto x = this->typeTag; //Fehler: this->typeTag existiert nicht
}
};
int main() {
Button b;
b.foo();
// your code goes here
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY2xhc3MgVWlDb250cm9sCnsKcHJvdGVjdGVkOgogICAgVWlDb250cm9sKCkKICAgIHsKICAgICAgICAvL1RoZSBjb25zdHJ1Y3RvciBVaUNvbnRyb2wgaXMgcHJpdmF0ZSwgb25seSBvYmplY3RzIG9mIHN1YmNsYXNzZXMgY2FuIGJlIGNyZWF0ZWQKICAgIH0KCnB1YmxpYzoKICAgIGludCB4OwogICAgaW50IHk7CiAgICAKICAgIGludCB3aWR0aDsKICAgIGludCBoZWlnaHQ7CgogICAgZW51bSBUeXBlVGFnIHsgQlVUVE9OLCBURVhUX0ZJRUxEIH07CiAgICBUeXBlVGFnIHR5cGVUYWc7Cn07CgpjbGFzcyBCdXR0b24gOiBwdWJsaWMgVWlDb250cm9sCnsKcHVibGljOgoJQnV0dG9uKCkgOiBVaUNvbnRyb2woKSB7fQoJCgl2b2lkIGZvbygpIHsKICAgIGF1dG8geCA9IHRoaXMtPnR5cGVUYWc7IC8vRmVobGVyOiB0aGlzLT50eXBlVGFnIGV4aXN0aWVydCBuaWNodAoJfQp9OwoKaW50IG1haW4oKSB7CglCdXR0b24gYjsKCWIuZm9vKCk7CgkvLyB5b3VyIGNvZGUgZ29lcyBoZXJlCglyZXR1cm4gMDsKfQ==