-
Notifications
You must be signed in to change notification settings - Fork 0
/
haMacro.h
140 lines (135 loc) · 4.07 KB
/
haMacro.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
//
// Created by 邱宇航 on 2017/3/20.
//
#ifndef HAMACRO_HAMACRO_H
#define HAMACRO_HAMACRO_H
//#define alignas //(C++11 起)
//#define alignof //(C++11 起)
//#define and
//#define and_eq
//#define asm
//#define atomic_cancel //(TM TS)
//#define atomic_commit //(TM TS)
//#define atomic_noexcept //(TM TS)
//#define auto//(1)
//#define bitand
//#define bitor
//#define bool
//#define break
//#define case
//#define catch
//#define char
//#define char16_t //(C++11 起)
//#define char32_t //(C++11 起)
#define 西方那一套 class
//#define compl
//#define concept //(概念 TS)
//#define const
//#define constexpr //(C++11 起)
//#define const_cast
#define 续 continue
//#define decltype //(C++11 起)
//#define default //(1)
//#define delete //(1)
#define 弄个 do
//#define double
//#define dynamic_cast
#define 我一句话不说也不好 else
//#define enum
//#define explicit
//#define export //(1)
//#define extern //(1)
#define 没听说过 false
//#define float
//#define for
//#define friend
//#define goto
#define 如果你一定要问我 if
#define 滋瓷 import //(模块 TS)
//#define inline //(1)
#define 一颗 int
#define 不知道高到哪里去 long
//#define module //(模块 TS)
//#define mutable //(1)
//#define namespace
#define 无中生有 new
//#define noexcept //(C++11 起)
//#define not
//#define not_eq
//#define nullptr //(C++11 起)
//#define operator
//#define or
//#define or_eq
//#define private
//#define protected
//#define public
//#define register //(2)
//#define reinterpret_cast
//#define requires //(概念 TS)
//#define return
//#define short
//#define signed
//#define sizeof //(1)
#define 基本法 static
//#define static_assert //(C++11 起)
//#define static_cast
//#define struct //(1)
//#define switch
//#define synchronized //(TM TS)
//#define template
//#define this
//#define thread_local //(C++11 起)
//#define throw
#define 吼啊 true
//#define try
//#define typedef
//#define typeid
//#define typename
//#define union
//#define unsigned
//#define using //(1)
//#define virtual
#define 没有任何的意思 void
//#define volatile
//#define wchar_t
#define 问来问去 while
//#define xor
//#define xor_eq
//
////(1) - 在 C++11 中含义发生了变化或者增加了新含义。注:关键字 export 也在模块 TS 中使用。
////(2) - 在 C++17 中含义发生了变化。
////注意,and、bitor、or、xor、compl、bitand、and_eq、or_eq、xor_eq、not 与 not_eq(以及双连符 <%、%>、<:、:>、%: 与 %:%:)提供标准记号的替代表示形式。
////除了关键字,还有两个“具有特殊意义的标识符”,它们可以用作对象或函数的名字,但在某些语境中具有特殊的意义。
//
//
//#define override (C++11)
//#define final (C++11)
//#define transaction_safe (TM TS)
//#define transaction_safe_dynamic (TM TS)
//
////此外,在任何位置包含双下划线(__)的任何标识符,或以一个下划线后接一个大写字母开头的任何标识符总是被保留的,而以一个下划线开头的标识符则在全局命名空间中保留作为名字的使用。参见标识符页面中的详细解释。
////命名空间 std 用于放置 C++ 标准库中的名字。有关向其添加名字的规则,参见扩充 std 命名空间。
////名字 posix 被保留未来用作顶层命名空间的名字。如果程序在该命名空间中声明或定义任何东西,都具有未定义的行为。 (C++11 起)
////在预处理指令中,下列记号会被预处理器识别:
//
//
//#define if
//#define elif
//#define else
//#define endif
//#define defined
//
//#define ifdef
//#define ifndef
//#define define
//#define undef
//
//#define include
//#define line
//#define error
//#define pragma
//
//
////下列标记会被预处理器在预处理指令之外识别:
//#define _Pragma(C++11 起)
#endif //HAMACRO_HAMACRO_H