可能重复:
const CFoo &bar() const
这条线的含义是什么?
virtual void Encode (KDataStream & stream) const;
C++最后的const是什么意思?
可能重复:
const CFoo &bar() const
这条线的含义是什么?
virtual void Encode (KDataStream & stream) const;
C++最后的const是什么意思?
这意味着——通过引用传递。
方法末尾的“const”表示方法实现不会更改任何成员变量的值。因此,通过在类接口本身中看到这一点(不必知道实现),对象的客户端可以知道这种行为。
这条线的含义是什么?
virtual void Encode (KDataStream & stream) const;
这是一个声明函数的语句。
virtual
意味着它是一个成员函数,可以被具有相同名称和兼容参数的函数覆盖,并在派生自该类的类中声明返回类型。将根据调用它的对象的类型选择正确的版本(在运行时,如有必要)。
void
意味着它不返回任何东西。
Encode
是函数的名称。
(
标记参数列表的开始。
KDataStream
是第一个参数的类型。
&
表示参数是通过引用传递的。
stream
是赋予参数的名称;它用作文档,但可以在不改变含义的情况下从声明中省略。
)
标记参数列表的结尾。
const
意味着它是一个成员函数,不能修改调用它的对象的非静态、非可变数据成员。它还允许在声明的对象上调用它const
。
;
标记语句的结束。
阅读指针,如果你想用 C++ 编写代码,你需要知道它们是如何工作的:
http://www.cplusplus.com/doc/tutorial/pointers/
& 表示您传递的是流的内存地址,而不是流的值