📄 types_8h-source.html.svn-base
字号:
00259 <a name="l00261"></a><a class="code" href="classodbc_1_1_bytes.html#a2">00261</a> Bytes(<font class="keyword">const</font> Bytes& b)00262 :rep_(b.rep_) {00263 rep_->refCount_++;00264 }00265 <a name="l00267"></a><a class="code" href="classodbc_1_1_bytes.html#a3">00267</a> Bytes& operator=(<font class="keyword">const</font> Bytes& b) {00268 <font class="keywordflow">if</font>(--rep_->refCount_==0) {00269 <font class="keyword">delete</font> rep_;00270 }00271 rep_=b.rep_;00272 rep_->refCount_++;00273 <font class="keywordflow">return</font> *<font class="keyword">this</font>;00274 }00275 <a name="l00277"></a><a class="code" href="classodbc_1_1_bytes.html#a4">00277</a> <font class="keywordtype">bool</font> operator==(<font class="keyword">const</font> Bytes& b)<font class="keyword"> const </font>{00278 <font class="keywordflow">if</font> (getSize()!=b.getSize())00279 <font class="keywordflow">return</font> <font class="keyword">false</font>;00280 <font class="keywordflow">for</font>(size_t i=0;i<getSize();i++) {00281 <font class="keywordflow">if</font>(*(getData()+i)!=*(b.getData()+i))00282 <font class="keywordflow">return</font> <font class="keyword">false</font>;00283 }00284 <font class="keywordflow">return</font> <font class="keyword">true</font>;00285 }00286 <a name="l00288"></a><a class="code" href="classodbc_1_1_bytes.html#a5">00288</a> ~Bytes() {00289 <font class="keywordflow">if</font>(--rep_->refCount_==0) {00290 <font class="keyword">delete</font> rep_;00291 }00292 }00293 <a name="l00295"></a><a class="code" href="classodbc_1_1_bytes.html#a6">00295</a> <font class="keyword">const</font> ODBCXX_SIGNED_CHAR_TYPE* getData()<font class="keyword"> const </font>{00296 <font class="keywordflow">return</font> rep_->buf_;00297 }00298 <a name="l00300"></a><a class="code" href="classodbc_1_1_bytes.html#a7">00300</a> size_t getSize()<font class="keyword"> const </font>{00301 <font class="keywordflow">return</font> rep_->len_;00302 }00303 };00304 <font class="preprocessor">#endif</font>00305 <font class="preprocessor"></font><a name="l00307"></a><a class="code" href="classodbc_1_1_date.html">00307</a> <font class="keyword">class </font>ODBCXX_EXPORT Date {00308 <font class="keyword">protected</font>:00309 <font class="keywordtype">int</font> year_;00310 <font class="keywordtype">int</font> month_;00311 <font class="keywordtype">int</font> day_;00312 00313 <font class="keyword">virtual</font> <font class="keywordtype">void</font> _invalid(<font class="keyword">const</font> ODBCXX_CHAR_TYPE* what, <font class="keywordtype">int</font> value);00314 00315 <font class="keywordtype">int</font> _validateYear(<font class="keywordtype">int</font> y) {00316 <font class="keywordflow">return</font> y;00317 }00318 00319 <font class="keywordtype">int</font> _validateMonth(<font class="keywordtype">int</font> m) {00320 <font class="keywordflow">if</font>(m<1 || m>12) {00321 this->_invalid(ODBCXX_STRING_CONST(<font class="stringliteral">"month"</font>),m);00322 }00323 <font class="keywordflow">return</font> m;00324 }00325 00326 <font class="keywordtype">int</font> _validateDay(<font class="keywordtype">int</font> d) {00327 <font class="keywordflow">if</font>(d<1 || d>31) {00328 this->_invalid(ODBCXX_STRING_CONST(<font class="stringliteral">"day"</font>),d);00329 }00330 <font class="keywordflow">return</font> d;00331 }00332 00333 <font class="keyword">public</font>:<a name="l00336"></a><a class="code" href="classodbc_1_1_date.html#a0">00336</a> Date(<font class="keywordtype">int</font> year, <font class="keywordtype">int</font> month, <font class="keywordtype">int</font> day) {00337 this->setYear(year);00338 this->setMonth(month);00339 this->setDay(day);00340 }00341 00346 <font class="keyword">explicit</font> Date();00347 <a name="l00352"></a><a class="code" href="classodbc_1_1_date.html#a2">00352</a> Date(std::time_t t) {00353 this->setTime(t);00354 }00355 <a name="l00360"></a><a class="code" href="classodbc_1_1_date.html#a3">00360</a> Date(<font class="keyword">const</font> ODBCXX_STRING& str) {00361 this->parse(str);00362 }00363 <a name="l00365"></a><a class="code" href="classodbc_1_1_date.html#a4">00365</a> Date(<font class="keyword">const</font> Date& d)00366 :year_(d.year_),00367 month_(d.month_),00368 day_(d.day_) {}00369 <a name="l00371"></a><a class="code" href="classodbc_1_1_date.html#a5">00371</a> Date& operator=(<font class="keyword">const</font> Date& d) {00372 year_=d.year_;00373 month_=d.month_;00374 day_=d.day_;00375 <font class="keywordflow">return</font> *<font class="keyword">this</font>;00376 }00377 <a name="l00379"></a><a class="code" href="classodbc_1_1_date.html#a6">00379</a> <font class="keyword">virtual</font> ~Date() {}00380 00382 <font class="keyword">virtual</font> <font class="keywordtype">void</font> setTime(std::time_t t);00383 00385 std::time_t getTime() <font class="keyword">const</font>;00386 00388 <font class="keywordtype">void</font> parse(<font class="keyword">const</font> ODBCXX_STRING& str);00389 <a name="l00391"></a><a class="code" href="classodbc_1_1_date.html#a10">00391</a> <font class="keywordtype">int</font> getYear()<font class="keyword"> const </font>{00392 <font class="keywordflow">return</font> year_;00393 }00394 <a name="l00396"></a><a class="code" href="classodbc_1_1_date.html#a11">00396</a> <font class="keywordtype">int</font> getMonth()<font class="keyword"> const </font>{00397 <font class="keywordflow">return</font> month_;00398 }00399 <a name="l00401"></a><a class="code" href="classodbc_1_1_date.html#a12">00401</a> <font class="keywordtype">int</font> getDay()<font class="keyword"> const </font>{00402 <font class="keywordflow">return</font> day_;00403 }00404 <a name="l00406"></a><a class="code" href="classodbc_1_1_date.html#a13">00406</a> <font class="keywordtype">void</font> setYear(<font class="keywordtype">int</font> year) {00407 year_=this->_validateYear(year);00408 }00409 <a name="l00411"></a><a class="code" href="classodbc_1_1_date.html#a14">00411</a> <font class="keywordtype">void</font> setMonth(<font class="keywordtype">int</font> month) {00412 month_=this->_validateMonth(month);00413 }00414 <a name="l00416"></a><a class="code" href="classodbc_1_1_date.html#a15">00416</a> <font class="keywordtype">void</font> setDay(<font class="keywordtype">int</font> day) {00417 day_=this->_validateDay(day);00418 }00419 00421 <font class="keyword">virtual</font> ODBCXX_STRING toString() <font class="keyword">const</font>;00422 };00423 <a name="l00425"></a><a class="code" href="classodbc_1_1_time.html">00425</a> <font class="keyword">class </font>ODBCXX_EXPORT Time {00426 <font class="keyword">protected</font>:00427 <font class="keywordtype">int</font> hour_;00428 <font class="keywordtype">int</font> minute_;00429 <font class="keywordtype">int</font> second_;00430 00431 <font class="keyword">virtual</font> <font class="keywordtype">void</font> _invalid(<font class="keyword">const</font> ODBCXX_CHAR_TYPE* what, <font class="keywordtype">int</font> value);00432 00433 <font class="keywordtype">int</font> _validateHour(<font class="keywordtype">int</font> h) {00434 <font class="keywordflow">if</font>(h<0 || h>23) {00435 this->_invalid(ODBCXX_STRING_CONST(<font class="stringliteral">"hour"</font>),h);00436 }00437 <font class="keywordflow">return</font> h;00438 }00439 00440 <font class="keywordtype">int</font> _validateMinute(<font class="keywordtype">int</font> m) {00441 <font class="keywordflow">if</font>(m<0 || m>59) {00442 this->_invalid(ODBCXX_STRING_CONST(<font class="stringliteral">"minute"</font>),m);00443 }00444 <font class="keywordflow">return</font> m;00445 }00446 00447 <font class="keywordtype">int</font> _validateSecond(<font class="keywordtype">int</font> s) {00448 <font class="keywordflow">if</font>(s<0 || s>61) {00449 this->_invalid(ODBCXX_STRING_CONST(<font class="stringliteral">"second"</font>),s);00450 }00451 <font class="keywordflow">return</font> s;00452 }00453 00454 <font class="keyword">public</font>:<a name="l00456"></a><a class="code" href="classodbc_1_1_time.html#a0">00456</a> Time(<font class="keywordtype">int</font> hour, <font class="keywordtype">int</font> minute, <font class="keywordtype">int</font> second) {00457 this->setHour(hour);00458 this->setMinute(minute);00459 this->setSecond(second);00460 }00461 00466 <font class="keyword">explicit</font> Time();00467 <a name="l00472"></a><a class="code" href="classodbc_1_1_time.html#a2">00472</a> Time(std::time_t t) {00473 this->setTime(t);00474 }00475 <a name="l00480"></a><a class="code" href="classodbc_1_1_time.html#a3">00480</a> Time(<font class="keyword">const</font> ODBCXX_STRING& str) {00481 this->parse(str);00482 }00483 <a name="l00485"></a><a class="code" href="classodbc_1_1_time.html#a4">00485</a> Time(<font class="keyword">const</font> Time& t)00486 :hour_(t.hour_),00487 minute_(t.minute_),00488 second_(t.second_) {}00489 <a name="l00491"></a><a class="code" href="classodbc_1_1_time.html#a5">00491</a> Time& operator=(<font class="keyword">const</font> Time& t) {00492 hour_=t.hour_;00493 minute_=t.minute_;00494 second_=t.second_;00495 <font class="keywordflow">return</font> *<font class="keyword">this</font>;00496 }00497 <a name="l00499"></a><a class="code" href="classodbc_1_1_time.html#a6">00499</a> <font class="keyword">virtual</font> ~Time() {}00500 00502 <font class="keyword">virtual</font> <font class="keywordtype">void</font> setTime(std::time_t t);00503 00505 std::time_t getTime() <font class="keyword">const</font>;00506 00508 <font class="keywordtype">void</font> parse(<font class="keyword">const</font> ODBCXX_STRING& str);00509 <a name="l00511"></a><a class="code" href="classodbc_1_1_time.html#a10">00511</a> <font class="keywordtype">int</font> getHour()<font class="keyword"> const </font>{00512 <font class="keywordflow">return</font> hour_;00513 }00514 <a name="l00516"></a><a class="code" href="classodbc_1_1_time.html#a11">00516</a> <font class="keywordtype">int</font> getMinute()<font class="keyword"> const </font>{00517 <font class="keywordflow">return</font> minute_;00518 }00519 <a name="l00521"></a><a class="code" href="classodbc_1_1_time.html#a12">00521</a> <font class="keywordtype">int</font> getSecond()<font class="keyword"> const </font>{00522 <font class="keywordflow">return</font> second_;00523 }00524 <a name="l00526"></a><a class="code" href="classodbc_1_1_time.html#a13">00526</a> <font class="keywordtype">void</font> setHour(<font class="keywordtype">int</font> h) {00527 hour_=this->_validateHour(h);00528 }00529 <a name="l00531"></a><a class="code" href="classodbc_1_1_time.html#a14">00531</a> <font class="keywordtype">void</font> setMinute(<font class="keywordtype">int</font> m) {00532 minute_=this->_validateMinute(m);00533 }00534 <a name="l00536"></a><a class="code" href="classodbc_1_1_time.html#a15">00536</a> <font class="keywordtype">void</font> setSecond(<font class="keywordtype">int</font> s) {00537 second_=this->_validateSecond(s);00538 }00539 00540 <font class="keyword">virtual</font> ODBCXX_STRING toString() <font class="keyword">const</font>;00541 };00542 00543 <a name="l00546"></a><a class="code" href="classodbc_1_1_timestamp.html">00546</a> <font class="keyword">class </font>ODBCXX_EXPORT Timestamp : <font class="keyword">public</font> Date, <font class="keyword">public</font> Time {00547 <font class="keyword">private</font>:00548 <font class="keywordtype">int</font> nanos_;00549 00550 <font class="keyword">virtual</font> <font class="keywordtype">void</font> _invalid(<font class="keyword">const</font> ODBCXX_CHAR_TYPE* what, <font class="keywordtype">int</font> value);00551 00552 <font class="keywordtype">int</font> _validateNanos(<font class="keywordtype">int</font> n) {00553 <font class="keywordflow">if</font>(n<0) {
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -