#include <cstdio>
template<typename Func>
void hoge(Func f) {
puts("初期化処理内容");
f(); // メイン処理内容
puts("終了処理処理");
}
int main(void) {
hoge([]{
puts("メイン処理内容");
});
return 0;
}
I2luY2x1ZGUgPGNzdGRpbz4KCnRlbXBsYXRlPHR5cGVuYW1lIEZ1bmM+CnZvaWQgaG9nZShGdW5jIGYpIHsKCXB1dHMoIuWIneacn+WMluWHpueQhuWGheWuuSIpOwoJZigpOyAvLyDjg6HjgqTjg7Plh6bnkIblhoXlrrkKCXB1dHMoIue1guS6huWHpueQhuWHpueQhiIpOwp9CgppbnQgbWFpbih2b2lkKSB7Cglob2dlKFtdewoJCXB1dHMoIuODoeOCpOODs+WHpueQhuWGheWuuSIpOwoJfSk7CglyZXR1cm4gMDsKfQo=