我需要一种语法,它允许我在之前初始化一些变量的情况下启动一个代码块,并且在执行代码块之后,我需要执行一些代码来释放一些其他变量。
因此,块内编写的代码应该在其他一些操作的中间执行。
这是我得到的:
#define application(block) new Application(&argc, argv); auto __code= []() block ; __code(); mainApplication->launch()
您看到的代码只是初始化了一个应用程序(一个 C++ 对象),所以我这样使用它:
application({
< write the code >
});
这样我可以确定应用程序总是被初始化,并在块之后启动。
但我想知道是否有办法避开圆括号,这样我就可以这样写:
application{
< write the code >
};
这种方式也有效,但它应该使语法更轻。