C ++中的静态bool函数

时间:2012-09-12 09:04:47

标签: c++ static boolean

该函数定义为static bool foo(const std::string& iVariable);属于A类。 当我使用if (A::foo(Var))时,我发现A :: foo(Var)的返回值不会改变,我在很多地方使用它,并且Var被更改。那么这是否意味着在我第一次使用它之后,A :: foo(Var)的返回值将被修复?非常感谢!

1 个答案:

答案 0 :(得分:2)

查看A :: foo的文档,看看它是否在第一次调用后忽略了参数。如果确实如此,那么您不应期望返回值发生变化。如果它没有这么说,那么你应该期望值以某种方式改变,这取决于输入以及文档希望告诉你的其他东西。

当然,文档可能是错误的或误导性的,在这种情况下,查看源代码可以澄清这一点。

如果没有文档,我建议您与代码的作者交谈。

如果您是作者,您可能还有一些工作要做。