c++ - ## 在 define 中是什么语法规则?

浏览:34日期:2023-03-17

问题描述

在jdk8源码的allocation.hpp中,有

#define METASPACE_OBJ_TYPE_DECLARE(name) name ## Type,#define METASPACE_OBJ_TYPE_NAME_CASE(name) case name ## Type: return #name; enum Type { // Types are MetaspaceObj::ClassType, MetaspaceObj::SymbolType, etc METASPACE_OBJ_TYPES_DO(METASPACE_OBJ_TYPE_DECLARE) _number_of_types };

不理解 ## 在 define 中是什么语法规则.

问题解答

回答1:

#define是定义变量,2个##是连接运算符,可以查看

回答2:

## 是连接运算符,参见 https://stackoverflow.com/que...

相关文章: