#include <iostream>
class DebugMessage
{
private:
std::ostream& stream;
public:
DebugMessage() : stream( std::cout ) { }
virtual ~DebugMessage() { stream << std::endl; }
operator std::ostream&() { return stream; }
};
int main(int argc, char *argv[])
{
static_cast<std::ostream&>(DebugMessage()) << "hello" << 42;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKY2xhc3MgRGVidWdNZXNzYWdlIAp7CnByaXZhdGU6IAoJc3RkOjpvc3RyZWFtJiBzdHJlYW07CnB1YmxpYzoKICAgIERlYnVnTWVzc2FnZSgpIDogc3RyZWFtKCBzdGQ6OmNvdXQgKSB7IH0KICAgIHZpcnR1YWwgfkRlYnVnTWVzc2FnZSgpIHsgc3RyZWFtIDw8IHN0ZDo6ZW5kbDsgfQogICAgb3BlcmF0b3Igc3RkOjpvc3RyZWFtJigpIHsgcmV0dXJuIHN0cmVhbTsgfQp9OwoKaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKewogICAgc3RhdGljX2Nhc3Q8c3RkOjpvc3RyZWFtJj4oRGVidWdNZXNzYWdlKCkpIDw8ICJoZWxsbyIgPDwgNDI7CiAgICByZXR1cm4gMDsKfQ==