dub*_*nde 18 c++ boost pragma header-files c-preprocessor
刚见过这里面 <boost/asio.hpp>
#ifndef BOOST_ASIO_HPP
#define BOOST_ASIO_HPP
#if defined(_MSC_VER) && (_MSC_VER >= 1200)
# pragma once
#endif // defined(_MSC_VER) && (_MSC_VER >= 1200)
/// ....
#endif // BOOST_ASIO_HPP
Run Code Online (Sandbox Code Playgroud)
无视_MSC_VER
预处理器检查,#pragma once
在这种情况下有什么好处?在所有情况下以及在所有平台上,预处理器头部保护是否都不能确保头部内容只有included
一次?
Aoi*_*asu 21
#pragma once
指定编译源代码文件时编译器仅包含(打开)一次文件.这可以减少构建时间,因为编译器不会在第一个#include
模块之后打开和读取文件.
如果不这样做#pragma once
,则每次需要时都会打开该文件#ifndef BOOST_ASIO_HPP
,如果已定义,编译器将停止解析它.
归档时间: |
|
查看次数: |
7187 次 |
最近记录: |