其他分享
首页 > 其他分享> > c – 你应该在前向声明标题中使用#ifndef guard吗?

c – 你应该在前向声明标题中使用#ifndef guard吗?

作者:互联网

我有一个简单的头文件,我在前面声明命名空间中的所有类,例如.

#ifndef TEST_FWD_HPP
#define TEST_FWD_HPP

namespace a {
    namespace b {

            class A;
            class B;

    }
}

#endif

该文件是否应该防范多个包含(#ifndef …)?这仅对前向声明有意义吗?

解决方法:

保护这样的头文件通常是一种好习惯.在大多数情况下,文件只包含一次,但是当项目变得复杂,并且头文件包含在其他头文件中时,它可以帮助您保持理智.

如果你只有前向定义和函数原型,那么它通常是没有必要的,但随着头文件随着时间的推移倾向于占用东西,它通常是值得做的事情.

标签:c,header-files,forward-declaration
来源: https://codeday.me/bug/20190723/1511601.html