哪个参数应首先是`old`或`new`?

时间:2012-07-21 09:37:55

标签: c++ naming-conventions

我创建了函数replaceElement。我不确定old参数应该是第一个还是第二个。在这种情况下,参数顺序的常用方法是什么?

void replaceElement(Element *old, Element *n);

void replaceElement(Element *n, Element *old);

3 个答案:

答案 0 :(得分:3)

我会选择void replaceElement(Element *old, Element *n);

对我来说听起来更好,而且您可能希望稍后制作默认参数。在您的情况下,默认值为new

这就是std::replace形成的方式:

template< class ForwardIterator, class T >
void replace( ForwardIterator first, ForwardIterator last,
              const T& old_value, const T& new_value );

答案 1 :(得分:1)

在c ++中,它通常是第一个目的地,然后是来源 所以我说目的地=旧和源=新

答案 2 :(得分:1)

先是旧的,然后是新的。您将函数命名为replaceElement。所以你看了:

void replaceElement(Element* old, Element* n);

为:

  

old

替换元素n