#include <iostream>
#include <string>
using namespace std;
class CodeGenerator{
public:
void AddLineToBody(string str);
void print() {cout << bodyASM;}
private:
string bodyASM;
};
void CodeGenerator::AddLineToBody(string str)
{
bodyASM += str;
bodyASM += "\n";
}
int main() {
void (CodeGenerator::*AddLine)(string);
AddLine = &CodeGenerator::AddLineToBody;
class CodeGenerator *stroka = new CodeGenerator;
(stroka->*AddLine)("str");
stroka->print();
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY2xhc3MgQ29kZUdlbmVyYXRvcnsKcHVibGljOgoJdm9pZCBBZGRMaW5lVG9Cb2R5KHN0cmluZyBzdHIpOwoJdm9pZCBwcmludCgpIHtjb3V0IDw8IGJvZHlBU007fQpwcml2YXRlOgoJc3RyaW5nIGJvZHlBU007Cn07Cgp2b2lkIENvZGVHZW5lcmF0b3I6OkFkZExpbmVUb0JvZHkoc3RyaW5nIHN0cikKewogICAgYm9keUFTTSArPSBzdHI7CiAgICBib2R5QVNNICs9ICJcbiI7Cn0KCmludCBtYWluKCkgewoJCgl2b2lkIChDb2RlR2VuZXJhdG9yOjoqQWRkTGluZSkoc3RyaW5nKTsKCUFkZExpbmUgPSAmQ29kZUdlbmVyYXRvcjo6QWRkTGluZVRvQm9keTsKCWNsYXNzIENvZGVHZW5lcmF0b3IgKnN0cm9rYSA9IG5ldyBDb2RlR2VuZXJhdG9yOwoJKHN0cm9rYS0+KkFkZExpbmUpKCJzdHIiKTsKCXN0cm9rYS0+cHJpbnQoKTsKCXJldHVybiAwOwp9