gpt4 book ai didi

c++ - 向类的每个方法添加不变检查

转载 作者:行者123 更新时间:2023-11-30 04:38:01 24 4
gpt4 key购买 nike

我有一个包含许多方法的类,我想检查前置/后置条件,例如 mMember == null,如果不是则调用函数 x()。

是否可以自动为该类的每个成员添加前置/后置条件?该类在 class.h 中定义,所有方法都在 class.cpp 中定义。能够在 class.cpp 的开头定义一个宏将是理想的,它将仅插入该文件中的每个函数条目。

我知道我可以在每个函数条目上手动添加相同的前置条件/​​后置条件(使用析构函数),但我一次又一次地遇到这个问题。这并不理想,因为我无法检查这些更改并且必须在本地维护它们并且它们从其他人的更改中 Root 。

最佳答案

我还没有用 C++ 做到这一点;我一直使用一组手动添加到每个成员函数的宏。

不过,这听起来像是一项可能非常适合面向方面编程的工作,而且我看到 C++ 中有适用于 AOP 的库,例如 AspectC++。至少看一下其中的一个并看看它是否可以用来解决您的问题可能是值得的。

关于c++ - 向类的每个方法添加不变检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3420806/

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