#include <iostream>
using namespace std;
template<class T>
class UmnyiUkasatel
{
public:
UmnyiUkasatel() { ptr = new T; cout << "constructor\n"; }
~UmnyiUkasatel() { delete ptr; cout << "destructor\n"; }
private:
T *ptr;
};
void func()
{
UmnyiUkasatel<float> yo;
cout << "in function\n";
}
int main()
{
func();
cout << "after function\n";
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKdGVtcGxhdGU8Y2xhc3MgVD4KY2xhc3MgVW1ueWlVa2FzYXRlbAp7CnB1YmxpYzoKCVVtbnlpVWthc2F0ZWwoKSB7IHB0ciA9IG5ldyBUOyBjb3V0IDw8ICJjb25zdHJ1Y3RvclxuIjsgfQoJflVtbnlpVWthc2F0ZWwoKSB7IGRlbGV0ZSBwdHI7IGNvdXQgPDwgImRlc3RydWN0b3JcbiI7IH0KcHJpdmF0ZToKCVQgKnB0cjsKfTsKCnZvaWQgZnVuYygpIAp7CglVbW55aVVrYXNhdGVsPGZsb2F0PiB5bzsKCWNvdXQgPDwgImluIGZ1bmN0aW9uXG4iOwp9CgppbnQgbWFpbigpCnsJCglmdW5jKCk7Cgljb3V0IDw8ICJhZnRlciBmdW5jdGlvblxuIjsKCQp9