2
我是C++的新手,虽然编程经验很少,但想知道在定义中是否包含关键字在全球范围内达成共识。如果我在头文件中有关键字的声明,我应该在定义本身中包含相同的关键字吗?
例如(不是一个有效的声明,但为例):
class Dog : Animal {
void foo() const override final foo bar ... keywords;
}
难道是一般建议(为了清楚起见)做的定义是相同的,或者我应该只是离开他们了吗?
Dog::foo() const override final foo bar ... keywords {
//
}
如果包含在声明中,是否有任何关键字必须包含在定义中?
取决于关键字。如果您省略'const',则不会定义您声明的同一个函数。更不用说其他人在课外定义中不被允许。 [请选择一本好书](https://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list)。 – StoryTeller
谢谢!我没有意识到这一点。这是唯一的主要例外吗?会看看这本书的主题,但发现他们对我而言或者是初学者,或者是对我来说太高级了。 :( –
定义需要包含足够的信息(类名称,函数名称,返回类型,参数类型,const限定符,异常说明等),以便定义与声明相匹配。标识符,而不是关键字,除此之外,你的问题还不清楚。 – Peter