mFrame
載入中...
搜尋中...
無符合項目
Boolean.h
1
8#ifndef MFRAME_AB5A72F1_A2BD_4DB3_94EF_8F0B7AE9215A
9#define MFRAME_AB5A72F1_A2BD_4DB3_94EF_8F0B7AE9215A
10
11/* ***************************************************************************************
12 * Include
13 */
14
15//----------------------------------------------------------------------------------------
16
17//----------------------------------------------------------------------------------------
18#include "./../numb/Number.h"
19
20/* ***************************************************************************************
21 * Namespace
22 */
23namespace mframe::numb {
24 class Boolean;
25} // namespace mframe::numb
26
27/* ***************************************************************************************
28 * Class Boolean
29 */
31 /* *************************************************************************************
32 * Variable
33 */
34
35 /* *************************************************************************************
36 * Abstract Method
37 */
38
39 /* *************************************************************************************
40 * Construct Method
41 */
42 public:
47 Boolean(void);
48
54 Boolean(bool value);
55
60 virtual ~Boolean(void) override;
61
62 /* *************************************************************************************
63 * Operator Method
64 */
65 public:
70 operator bool(void) {
71 return Boolean::vValue.b;
72 }
73
81 bool operator==(bool v) {
82 return (static_cast<bool>(Boolean::vValue.b) == v);
83 }
84
93 return (Boolean::vValue.b == v.vValue.b);
94 }
95
103 bool operator=(bool v) {
104 Boolean::vValue.b = v;
105 return Boolean::vValue.b;
106 }
107
115 if (v > 0)
116 Boolean::vValue.b = true;
117
118 else if (v < 0)
119 Boolean::vValue.b = false;
120
121 return *this;
122 }
123
131 if (v < 0)
132 Boolean::vValue.b = true;
133
134 else if (v > 0)
135 Boolean::vValue.b = false;
136
137 return *this;
138 }
139
146 Boolean tmp = *this;
147 Boolean::vValue.b = true;
148 return tmp;
149 }
150
157 Boolean::vValue.b = true;
158 return *this;
159 }
160
167 Boolean tmp = *this;
168 Boolean::vValue.b = false;
169 return tmp;
170 }
171
178 Boolean::vValue.b = false;
179 return *this;
180 }
181
182 /* *************************************************************************************
183 * Public Method <Override>
184 */
185
186 /* *************************************************************************************
187 * Public Method
188 */
189
190 /* *************************************************************************************
191 * Protected Method
192 */
193
194 /* *************************************************************************************
195 * Private Method
196 */
197
198 /* *************************************************************************************
199 * Static Variable
200 */
201 public:
202 static const bool VALUE_TRUE = true;
203 static const bool VALUE_FALSE = false;
204 /* *************************************************************************************
205 * Static Method
206 */
207};
208
209/* ***************************************************************************************
210 * End of file
211 */
212
213#endif /* MFRAME_AB5A72F1_A2BD_4DB3_94EF_8F0B7AE9215A */
Definition Boolean.h:30
Boolean operator+=(int v)
Definition Boolean.h:114
Boolean & operator--()
Definition Boolean.h:177
Boolean operator--(int)
Definition Boolean.h:166
bool operator==(bool v)
Definition Boolean.h:81
Boolean operator++()
Definition Boolean.h:156
Boolean(void)
Construct a new Boolean object.
Boolean operator-=(int v)
Definition Boolean.h:130
bool operator==(Boolean &v)
Definition Boolean.h:92
Boolean(bool value)
Construct a new Boolean object.
virtual ~Boolean(void) override
Destroy the Boolean object.
bool operator=(bool v)
Definition Boolean.h:103
Boolean operator++(int)
Definition Boolean.h:145
Definition Number.h:30
Definition Boolean.h:23