本来以为#pragma once / #ifndef + extern可以解决头文件及全局变量的那些问题,今天又发现编译顺序还会有所影响,网上找了些说法看了下,仍然感觉有点模糊,需要写些测试的东西才能总结一下。
另外,还发现#pragma once与#ifndef的些微区别,好像是在编译时,ifndef修饰的可能会被反复多次的打开,而pragma once则不会,但编译器的支持上ifndef则是标准支持的,而pragma once则是非标准的,虽然据说vc,gcc均是支持的
另外,还发现#pragma once与#ifndef的些微区别,好像是在编译时,ifndef修饰的可能会被反复多次的打开,而pragma once则不会,但编译器的支持上ifndef则是标准支持的,而pragma once则是非标准的,虽然据说vc,gcc均是支持的