May*_*ron -5 c++ reference function
嗨,我有一个基本的问题,抱歉,如果它是一个重复,但我似乎无法找到我正在寻找与谷歌.
我有这个功能签名:
ostream& operator<<(ostream& o, const Test& t) {...}
Run Code Online (Sandbox Code Playgroud)
并且引用"&"的排序有时让我困惑,因为它有时会在函数名/参数的前面:
ostream &operator<<(ostream &o, const Test &t) {...}
Run Code Online (Sandbox Code Playgroud)
这有什么不同或有不同的含义?任何解释都会很精彩,谢谢!
编辑:他们似乎在编译时工作正常,但我应该使用哪一个?
这有什么不同或有不同的含义?
没什么区别.
任何解释都会很棒
通常,空格只会改变程序在需要分隔标记时的含义.标点令牌一样&不需要从字母标记分开,所以你会得到令牌的相同顺序这里(ostream,&,o),但是你的空间他们.
我应该使用哪一个?
哪个看起来更吸引你.或者,如果你在封建环境中工作,无论你的霸主命令如何.
就个人而言,我在修饰符的两边放置了空格,因为我将其视为与其他标记分开的"单词".其他人具有不同的美学,将其视为修改类型或变量,并相应地对其进行空间化.