doxygen中的r值引用参数应该是什么类型?[入]还是[入,出]


/**
* @param[?] u
*/
T func(U&& u);

参数u可以由func修改,而修改后的状态应该被忽略,因为它是一个r值参考。

我还没有找到任何关于这方面的信息,包括Doxygen手册。

你不应该从"它是一个参考,所以这意味着X";。您应该考虑u对函数意味着什么,以及函数对它做了什么。仅仅从u移动不足以将其声明为[inout]参数。当函数有意为其设置期望用户使用的值时,应使用[inout][out]。如果从右值引用参数移动,则用户的参数不再有值。这与";输出";。

事实上,右值引用参数不能绑定到左值参数(直接(。这意味着用户不能只调用func(some_variable);他们必须明确地进入其中:CCD_ 9。这种拼写感觉不像是一个输出值;它正在将的内容转移到函数中。如果用户期望some_variable具有新的值,尤其是因为func(some_type());将有效地丢弃";输出";价值

最新更新