【发布时间】:2021-05-01 12:42:02
【问题描述】:
据我了解,Visual Studio C++ 项目在头文件的最顶部使用#pragma once 以防止多次包含。
同样的,在 Qt Creator 项目中,使用
#ifndef FILE_H
#define FILE_H
// Code here
#endif
假设我有一个 Visual Studio 项目,我想使用 Qt Creator。 #pragma once问题如何处理?
如果可能,我不想编辑所有头文件。
【问题讨论】:
-
我很确定
#pragma once受到 Qt Creator 的支持。 -
#pragma once(或标头保护)由编译器(至少主要)处理,而不是 IDE。 -
#pragma once会导致什么问题?请解释 -
根据您的编译器或 C++ 版本,
#pragma once可以被忽略,或者编译器会抱怨#pragma不受支持。 -
即使支持
#pragma once,它也可能被足够复杂的目录结构所迷惑。这是一个很好的讨论:#pragma once vs include guards? 不要停留在第一个答案上。存在许多相互矛盾的观点,要真正解决问题,您必须阅读几个答案。
标签: c++ visual-studio qt c++17 qt-creator