c++ - C++ 返回时触发事件

标签 c++

我想在另一个函数返回之前执行一些函数。问题是有多个返回,我不想在每个返回之前复制粘贴我的电话。有没有更优雅的方式来做到这一点?

void f()
{
    //do something
    if ( blabla )
        return;
    //do something else
    return;
    //bla bla
}

我想在函数返回之前调用 g()。

最佳答案

struct DoSomethingOnReturn {
  ~DoSomethingOnReturn() {
    std::cout << "just before return" << std::endl;
  }
};
...
void func() {
  DoSomethingOnReturn a;
  if(1 > 2) return;      
}

关于c++ - C++ 返回时触发事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6873616/

相关文章:

Java 枚举和数组

c++ - const 是否允许在此处进行(理论上的)优化?

c++ - opencv视频稳定算法

c++ - 如何在 Qt 中再次使菜单项变灰

c++ - 如何设置 std::vector 的初始大小?

c++ - 模板 'using' 声明不起作用

c++ - 指针验证器

c++ - C++ 中是否有一种方法可以定义一个枚举,使其值在访问时必须完全限定?

c++ - 欧拉角到四元数然后四元数到欧拉角

c++ - 在调用 std::map::find 时跟踪节点遍历?