有没有更好的方法来评论代码中的参数方向?

Wil*_*hou 4 c++ readability

我想提高代码的可读性.所以我在代码中评论了参数的方向,如下所示:

#define IN
#define OUT

void Add(IN int Para1, IN int Para2, OUT int& Result);
Run Code Online (Sandbox Code Playgroud)

但我认为编译器会用空白替换IN和OUT的每个实例,有时可能会出现相当大的问题.

那么还有更好的方法吗?谢谢.

(我使用的是C++.)

Aji*_*aze 9

您可以尝试将其放入评论中.这更好,更易读.

void Add(/*IN*/ int Para1, /*IN*/ int Para2, /*OUT*/ int& Result);
Run Code Online (Sandbox Code Playgroud)


coo*_*451 6

是的:忘掉那些东西并使用constness.只要您没有"输入"和"输出"参数,这将是有效的,这应该很少使用.

void foo(int i, const std::string& s, std::vector<char>& out_buf);
// i and s are obviously "in" variables, while out_buf could be both, 
// but you can easily show that by giving the parameter a proper name.
Run Code Online (Sandbox Code Playgroud)

编辑:和const正确并不意味着使值参数const!这根本不会给调用者任何额外的信息,因为你不能以任何方式改变他的变量.