Set*_*gie 8

是的,当下划线后跟另一个下划线或大写字母(即预处理器#defines或宏),或者标识符在全局命名空间(第17.6.4.3.2节)中时:

某些名称和函数签名集始终保留给实现:

- 包含双下划线_ _或以下划线后跟大写字母(2.12)开头的每个名称都保留给实现以供任何使用.

- 以下划线开头的每个名称都保留给实现,以用作全局名称空间中的名称.

请注意,第一个点表示如果标识符中的任何位置出现两个下划线,即使在中间或末尾,也会保留名称.另外,我想补充一下(§17.6.4.3.5,强调我的):

文字后缀标识以下划线开头被保留给未来的标准化.