gpt4 book ai didi

c++ - 返回时调用函数的方法

转载 作者:太空狗 更新时间:2023-10-29 20:18:08 26 4
gpt4 key购买 nike

每当我有 2 个特定函数时,一个我想在函数入口时调用,一个我想在函数返回时调用,我通常使用辅助类并将我想调用的函数放在构造函数中和析构函数——然后在函数的开头实例化该类的一个对象。我这样做主要是因为我不知道如何避免在 return 语句之前到处放置我想要在 return 上调用的函数。

我想知道是否有任何替代方法或更好的方法来处理这个问题。我没有经验,所以我什至不知道我的方法是否被认为是“糟糕的编程”。

最佳答案

这是一种相当普遍的技术。更具体地说,当离开对象被初始化的范围时,析构函数将被调用,这可能是在函数返回之前。它的一种用途是锁,其中一个辅助对象用于在它被销毁时进行解锁。

这是确保在离开范围时在所有情况下都调用函数的唯一方法,包括抛出异常时。

一种不同的情况是您想要检测您的代码,这就是探查器(例如)所做的,它允许您 Hook 代码而无需实际显式调用任何东西。但我认为这不是您想要的。

关于c++ - 返回时调用函数的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4986990/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com