请考虑以下示例:
class Example
{
int &_m;
public:
/**
* An example constructor.
*
* @param myint Reference to some int.
*/
Example(int& myint)
: _m(myint)
{
}
void change()
{
_m = 5;
}
};
我应该标记myint
参数@param[out]
吗?构造函数本身不会将它用作输出参数,但它存储在类中,可以通过change()
方法进行修改。
以下经验法则是否有意义:@param[in]
用于const
指针和引用,@param[in,out]
用于非const
个?{/ p>
答案 0 :(得分:1)
该文档适合您和您班级的读者,因此它应提供能够最清楚地了解正在发生的事情的信息。该对象似乎旨在写入引用。因此将其标记为out
参数并非不合理。如果它准确地传达了参考参数的预期用途,那么你应该这样使用它。
答案 1 :(得分:0)
以下经验法则是否有意义:@param [in]表示常量指针和引用,@ param [in,out]表示非常量指针?
是的,但是如果您读取和写入参考对象,那么它是[in,out]。如果你只是写,那就是[out]。