mFrame
載入中...
搜尋中...
無符合項目
Integer.h
1
8#ifndef MFRAME_B13FC504_C653_4436_A427_B6D01A462988
9#define MFRAME_B13FC504_C653_4436_A427_B6D01A462988
10
11/* ***************************************************************************************
12 * Integer
13 */
14
15//----------------------------------------------------------------------------------------
16
17//----------------------------------------------------------------------------------------
18#include "./../numb/Number.h"
19
20/* ***************************************************************************************
21 * Namespace
22 */
23namespace ufm::numb {
24 class Integer;
25} // namespace ufm::numb
26
27/* ***************************************************************************************
28 * Class Integer
29 */
45 /* *************************************************************************************
46 * Variable
47 */
48
49 /* *************************************************************************************
50 * Abstract Method
51 */
52
53 /* *************************************************************************************
54 * Construct Method
55 */
56 public:
62 Integer(void);
63
70 Integer(int value);
71
72 /* *************************************************************************************
73 * Operator Method
74 */
75 public:
81 inline operator int(void) {
82 return this->vValue.s32[0];
83 }
84
92 inline bool operator==(int v) {
93 return (this->vValue.s32[0] == v);
94 }
95
103 inline bool operator==(Integer& v) {
104 return (this->vValue.s32[0] == v.vValue.s32[0]);
105 }
106
113 inline int operator=(int v) {
114 this->vValue.s32[0] = v;
115 return this->vValue.s32[0];
116 }
117
124 inline Integer operator+=(int v) {
125 this->vValue.s32[0] += v;
126 return *this;
127 }
128
135 inline Integer operator-=(int v) {
136 this->vValue.s32[0] -= v;
137 return *this;
138 }
139
146 inline Integer operator*=(int v) {
147 this->vValue.s32[0] *= v;
148 return *this;
149 }
150
157 inline Integer operator/=(int v) {
158 this->vValue.s32[0] /= v;
159 return *this;
160 }
161
167 inline Integer operator++(int) {
168 Integer tmp = *this;
169 ++this->vValue.s32[0];
170 return tmp;
171 }
172
179 ++this->vValue.s32[0];
180 return *this;
181 }
182
188 inline Integer operator--(int) {
189 Integer tmp = *this;
190 --this->vValue.s32[0];
191 return tmp;
192 }
193
199 inline Integer& operator--(void) {
200 --this->vValue.s32[0];
201 return *this;
202 }
203 /* *************************************************************************************
204 * Override Method
205 */
206
207 /* *************************************************************************************
208 * Public Method
209 */
210
211 /* *************************************************************************************
212 * Protected Method
213 */
214
215 /* *************************************************************************************
216 * Private Method
217 */
218
219 /* *************************************************************************************
220 * Static Variable
221 */
222 public:
226 static constexpr const int MAX_VALUE = 2147483647L;
227
231 static constexpr const int MIN_VALUE = (-0x7fffffff - 1);
235 static constexpr const int SIZE = sizeof(int);
236
237 /* *************************************************************************************
238 * Static Method
239 */
240};
241
242/* ***************************************************************************************
243 * End of file
244 */
245
246#endif /* MFRAME_B13FC504_C653_4436_A427_B6D01A462988 */
整數封裝類
Definition Integer.h:44
Integer operator*=(int v)
乘法指定運算子
Definition Integer.h:146
bool operator==(int v)
比較Integer物件與整數是否相等
Definition Integer.h:92
Integer(void)
建構 Integer 物件
Integer operator+=(int v)
加法指定運算子
Definition Integer.h:124
Integer operator--(int)
後置遞減運算子
Definition Integer.h:188
bool operator==(Integer &v)
比較兩個Integer物件是否相等
Definition Integer.h:103
static constexpr const int MAX_VALUE
整數最大值常量
Definition Integer.h:226
Integer & operator--(void)
前置遞減運算子
Definition Integer.h:199
Integer operator++(int)
後置遞增運算子
Definition Integer.h:167
static constexpr const int MIN_VALUE
整數最小值常量
Definition Integer.h:231
static constexpr const int SIZE
整數大小(位元組)
Definition Integer.h:235
int operator=(int v)
指定運算子
Definition Integer.h:113
Integer operator-=(int v)
減法指定運算子
Definition Integer.h:135
Integer operator++()
前置遞增運算子
Definition Integer.h:178
Integer operator/=(int v)
除法指定運算子
Definition Integer.h:157
Integer(int value)
建構 Integer 物件
[Interface] 數值基礎抽象類
Definition Number.h:44
Value vValue
數值儲存體
Definition Number.h:72
Definition Boolean.h:23
int s32[2]
有符號32位元陣列
Definition Number.h:61