13.01.2015 Views

Pensar en C++ (Volumen 1) - Grupo ARCO

Pensar en C++ (Volumen 1) - Grupo ARCO

Pensar en C++ (Volumen 1) - Grupo ARCO

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

✐<br />

✐<br />

✐<br />

“Volum<strong>en</strong>1” — 2012/1/12 — 13:52 — page 259 — #297<br />

✐<br />

9.2. Funciones inline<br />

if(!lflag) {<br />

local = *std::localtime(&t);<br />

lflag++;<br />

}<br />

}<br />

void updateAscii() {<br />

if(!aflag) {<br />

updateLocal();<br />

std::strcpy(asciiRep,std::asctime(&local));<br />

aflag++;<br />

}<br />

}<br />

public:<br />

Time() { mark(); }<br />

void mark() {<br />

lflag = aflag = 0;<br />

std::time(&t);<br />

}<br />

const char* ascii() {<br />

updateAscii();<br />

return asciiRep;<br />

}<br />

// Differ<strong>en</strong>ce in seconds:<br />

int delta(Time* dt) const {<br />

return int(std::difftime(t, dt->t));<br />

}<br />

int daylightSavings() {<br />

updateLocal();<br />

return local.tm_isdst;<br />

}<br />

int dayOfYear() { // Since January 1<br />

updateLocal();<br />

return local.tm_yday;<br />

}<br />

int dayOfWeek() { // Since Sunday<br />

updateLocal();<br />

return local.tm_wday;<br />

}<br />

int since1900() { // Years since 1900<br />

updateLocal();<br />

return local.tm_year;<br />

}<br />

int month() { // Since January<br />

updateLocal();<br />

return local.tm_mon;<br />

}<br />

int dayOfMonth() {<br />

updateLocal();<br />

return local.tm_mday;<br />

}<br />

int hour() { // Since midnight, 24-hour clock<br />

updateLocal();<br />

return local.tm_hour;<br />

}<br />

int minute() {<br />

updateLocal();<br />

return local.tm_min;<br />

}<br />

259<br />

✐<br />

✐<br />

✐<br />

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!