【发布时间】:2014-01-01 00:36:57
【问题描述】:
我是一个 C++ 菜鸟,我在理解代码中的 C++ 语法时遇到了问题。现在我很困惑。
class date
{
private:
int day, month, year;
int correct_date( void );
public:
void set_date( int d, int m, int y );
void actual( void );
void print( void );
void inc( void );
friend int date_ok( const date& );
};
关于 '&' 字符,我理解它作为引用、地址和逻辑运算符的一般用法......
例如 int *Y = &X
参数末尾的&运算符是什么意思?
friend int date_ok( const date& );
谢谢
编辑:
感谢您的回答。 如果我理解正确的话,变量名就被简单地省略了,因为它只是一个原型。对于原型我不需要变量名,它是可选的。对吗?
但是,对于函数的定义,我肯定需要变量名,对吧?
【问题讨论】:
-
这是一个参考,在您的列表中。无论如何,
&&是合乎逻辑的。&是按位计算的。 -
它不在变量的末尾,它在type的末尾
-
有问题的声明没有命名参数。名称完全省略。
const data部分是类型,这意味着const data &代表引用类型的参数。此声明中的参数未命名。 -
如果需要,您还可以将该行重写为
friend int date_ok(const date &dateParam);。声明中的形参dateParam仅作文档说明,不影响函数的运行