#pragma once与#ifndef的区别?
生活随笔
收集整理的這篇文章主要介紹了
#pragma once与#ifndef的区别?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
/*
2017-12-20 創建人:Ruo_Xiao
*/
作用:只要在頭文件的最開始加入這條指令就能夠保證頭文件被編譯一次。 最先應用與MicroSoftware Visual C++中,后來陸續被其他編譯器所支持,所以不支持跨平臺。 只能對此文件有效,若一個文件有多個拷貝,且工程包含了這些拷貝文件,那么這些文件都會加入到工程中。
作用:防止該頭文件被重復包含。 受C/C++語言標準支持,所有支持C++的編譯器都支持此預編譯指令,所以支持跨平臺。 只要文件內容相同就可防止,即使一個文件的拷貝文件亦可避免重復包含,因為這個是通過宏指令進行判斷的。 缺點:如果ifndef使用的宏之前已經存在了,那么這種方法就會失效,會報找不到類型聲明的錯誤。
一、#pragma once
二、#ifndef … #define … (聲明) #endif
三、實例代碼
#ifndef __ClassName__H__ #define __ClassName__H__ (各種聲明) #endif----------#pragma once (各種聲明)總結
以上是生活随笔為你收集整理的#pragma once与#ifndef的区别?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: sizeof和strlen()区别
- 下一篇: int、unsigned int、flo