2012-02-29 116 views
1

可能重复:
What are the differences between pointer variable and reference variable in C++?
difference between a pointer and reference parameter?指针VS参考

我一直运行到同一个问题:在C++中,例如当建立一个新的类时,我应该什么时候使用指针和何时引用?

我应该总是喜欢引用指针吗?

我真的不明白的是,是不是引用实现为指针吗?

+0

10-4,签出SO贴。它应该回答你的问题。 – macduff 2012-02-29 20:17:45

+2

关于你最后的问题,下面是一个类比:整数加法可能是通过逻辑门的组合来实现的......然而,这并不意味着你必须以这种方式来思考它。 – stakx 2012-02-29 20:18:50

+0

@dasblinkenlight Thx。 – Ben 2012-02-29 20:21:35

回答

1

引用可能作为指针实现的事实在我看来并不真实。

我个人的经验法则是 - 如果你通过的任何东西都有存在,那么使用引用作为引用总是必须绑定到一个对象。如果你正在通过可能存在但不能保证,请使用指针,并确保它是一个非空指针,然后再使用它

1

是的,总是喜欢参考。引用是别名。是的,你可以将它们视为常数指针。你不能对它进行任何指针运算,所以它们通常更安全,因为被调用方法不能搞乱它们。 您不必检查被调用程序中的空引用,因为它不是指针。这是一个参考,因此不能为空。它必须是别名。 所以是的,除非你有坚实的理由使用指针,只需参考。