Heim  >  Fragen und Antworten  >  Hauptteil

c++ - Was sind die Syntaxregeln für ## in define?

In jdk8源码的allocation.hpp gibt es

#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
  };

Ich verstehe die grammatikalischen Regeln nicht in ##define.

大家讲道理大家讲道理2716 Tage vor740

Antworte allen(2)Ich werde antworten

  • 某草草

    某草草2017-06-05 11:13:07

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

    Antwort
    0
  • 漂亮男人

    漂亮男人2017-06-05 11:13:07

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

    Antwort
    0
  • StornierenAntwort