2010-12-23 107 views
3

这是指定参考的正确方法。我知道两者都适用于编译器,但想知道正确的方式,因为我已经在代码库中看到了这两种方法。C++参考语法

void Subroutine(int &Parameter) 
{ 
    Parameter=100; 
} 

OR

void Subroutine(int& Parameter) 
{ 
    Parameter=100; 
} 

回答

9

没有“正确”的方式,在相同就像没有“正确”的方式来放置括号和括号一样。这是一个风格和偏好的问题。

一致性更重要。

+1

+1为了一致性。 – 2010-12-23 02:16:50

+0

...但我的**是**一个真正的风格! – 2010-12-23 03:15:43

4

它喜好的问题,都是正确的,我个人现在喜欢写类型&

+1

+1“for nowadays”。 – 2010-12-23 03:14:42

0

这是代码风格的问题,没有人是好的或坏的,正确的或错误的。
我用这个:

int & a;
int * b;

太多空间(任何可能有点混淆与二元运算符&和*),但它看起来很清楚。

只要一致,无论你的风格是否正确。

1

我认为两者功能完全相同。我个人更喜欢int &参数,因为它对我更有意义 - 即名为Parameter的变量的类型为reference-to-int,而int &参数不会立即与我建立连接。我见过的大多数例子都使用int &表单。 (即参见http://www.cprogramming.com/tutorial/references.html)。

5

说到指针,C程序员倾向于编写int *i,它读取“评估*i产生一个int”。这是不可能的参考。如果你写int &i,评估&i确实不是产生一个int,而是一个指向int的指针,因为&在声明和表达式中有不同的含义。

这就是为什么我更喜欢将参考变量声明为int& i,因为i是对int的引用。