gpt4 book ai didi

c++ - 抛出异常的方法的命名约定(C++)?

转载 作者:搜寻专家 更新时间:2023-10-31 00:26:22 24 4
gpt4 key购买 nike

我们正在开发中型到大型 C++ 代码库,并且正在重构它以使其处于更好的状态。

最近有人建议我们扩展(可能)抛出异常的函数的命名约定,以便更容易确定 - 一目了然 - 函数是否可能 throw 异常(直接或间接通过调用 throw 的函数)。

虽然我发现能够更轻松地获取该信息会很好,但我无法摆脱这可能会导致麻烦的感觉,因为没有工具辅助的方法来验证和执行该约定 - 因此您不能真正依赖约定(除了给出提示)。

因为我对此感到痛苦和不确定,所以我决定从这里寻求建议:
那么,使用这样的命名约定是一个好主意/值得付出努力吗?是否有既定的约定?

最佳答案

它真的不会决定什么。这将是另一个在编程阶段无法执行的特殊约定:如果有人重构函数并忘记更改其名称会发生​​什么?

如果某人由于函数可能产生的异常变化而被迫更改函数名称,那么您可能会由于重载解析而在程序中引入重大更改:乱用函数名称可能会产生意想不到的副作用。

从 C++11 开始,您可以使用 noexcept 说明符,这可能会有帮助。

关于c++ - 抛出异常的方法的命名约定(C++)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52775900/

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