![]() |
1
18
示例:
至于其他名称空间中类的前向声明,您完全正确。只要记住总是合格的
|
![]() |
2
7
|
![]() |
3
3
关于#1,我不知道有任何具体的支持或反对理由。许多公司都有这样一个政策,即版权声明必须是文件中的第一项,然后才是其他内容或任何有意义的代码(可能假设您在吸收任何代码之前都会阅读版权)。为此,IFNDEF已经是代码了。从可用性的角度来看,把版权放在首位是有意义的,因为人们忽视了版权。然而,在我看来,任何描述模块的东西都应该在ifndef之后。 |
![]() |
4
2
1)由于评论实际上没有任何作用,我怀疑它有多重要。不过,从技术上讲,#包括复制和粘贴,因此将注释放在头保护之外可能意味着预处理器要做更多的工作。我不知道大多数编译器是否足够聪明,能够对此进行优化(即,如果它们在预处理器步骤之前删除注释),但在达到上万个头文件之前,您可能不会注意到。 2)没错。如果你想把一个类放在一个名称空间中,并且这个类要在头文件中声明,那么它应该在名称空间中声明,因此应该在头文件中。是的,这就是你申报的方式。是的,它是避免循环依赖的主要工具(您也可以更改您的设计,但原则上循环没有错,前提是这两个类只是通过引用或指针相互引用,而不调用任何方法)。 |
![]() |
5
2
准确地使用“Using”关键字并没有错(因为它为您提供了很多便利,而且在所有变量之前键入的内容也少得多) |
![]() |
AstralHex · 矩阵乘法代码工作不正常 5 月前 |
![]() |
Fishie · 作为类成员的智能指针是否仍然自动释放?[关闭] 5 月前 |
![]() |
Die4Toast · 递归调用成员箭头运算符-> 5 月前 |
![]() |
Anka Hanım · 关于结构和动态数组地址的问题 5 月前 |