C++中#if!defined后面加括号和不加括号有什么区别啊

加括号后相当有#pragma once
2025-03-24 21:34:39
推荐回答(2个)
回答1:

毫无区别


#if !defined SOME_MACRO

#if !defined(SOME_MACRO)

完全等价


此外等价的写法还有

#ifndef SOME_MACRO

回答2:

c++我不知道,但是在c语言中 #ifndef 标识符 等价于 #if !defined(标识符) 。
同理,#if defined(DEBUGS)等价于#if defined DEBUGS