跟进Do preprocessor Defines replacement in `operator""_name`的评论中的讨论
根据cppreference,保留标识符包括
在全局命名空间中,以下划线开头的标识符。
据我所知,宏不是命名空间的一部分,因此据此#define _min不应使我的程序格式错误,无需诊断。但这样做真的可以吗?我是否可以保证兼容的编译器永远不会以可能被该宏破坏的方式使用该标识符?
#define _min
c++ language-lawyer
c++ ×1
language-lawyer ×1