ifndef _CLOCK_H

Ceas digital

Pasul 1

Limba de programare Salvați Jupiterimages / Comstock / Getty Images

Creați fișierele. Acest program va necesita trei fișiere: un fișier antet clock.h pentru a defini ceasul de clasă, un fișier de cod sursă C ++ clock.cpp pentru a defini implementarea clasei ceasului și, în sfârșit, un exemplu de program simplu utilizând această clasă din main.cpp.

Pasul 2

Programul. Salvați Jupiterimage / Creatas / Getty Images

Definiți clasa ceasului. Deschideți fișierul antet clock.h și definiți structura clasei ceasului introducând codul următor:

ifndef _CLOCK_H

definesc _CLOCK_Hclass Clock {

public int: int getHours () int getMinutes () int getSeconds () std :: string getTime () Ceas () privat:} # endif / _CLOCK_H /

Clasa a fost definită pentru a obține rezultate mai bune (în plus față de constructorul Ceas). Funcțiile getHours, getMinutes și getSeconds vor aduce diferite fracții de timp în funcție de biblioteca standard de timp C ++. Biblioteca standard utilizează timpul de sistem ca ghid. Funcția getTime () va atribui formatul cu șirul standard HH: MM: SS, așa cum se vede în ceasurile digitale. Etichetele ifndef, define și endif sunt opționale, totuși este o practică bună să le folosiți. Când realizați proiecte mari, includeți aceste etichete pentru a vă asigura că un anumit fișier antet este încărcat o singură dată în memorie. Acest lucru va elimina riscul de erori prin referință circulară și creează obișnuința de a le include întotdeauna în fișierele antet noi, ceea ce vă va economisi multe dureri de cap în timpul unui proiect.

Pasul 3

Logic. Salvați Hemera Technologies / AbleStock.com / Getty Images

Implementați clasa Ceas. Deschideți fișierul clock.cpp și implementați toate funcțiile pe care le-ați definit în fișierul antet introducând următorul cod:

include

include

include \ "clock.h \" Ceas :: Ceas () {} int Ceas :: getHours ()

{time_t seconds = time (NULL) struct tm timeinfo = localtime (& secunde) return timeinfo-> tm_hour} int Ceas :: getMinutes () {time_t seconds = } int Ceas :: getSeconds () {time_t seconds = timp (NULL) struct tm * timeinfo = localtime (& secunde) return timeinfo-> tm_sec} std :: string Clock :: getTime () out.str (\ "\") timp + = \ ": \" afară << getMourutes () time + = out.str \ "\") timpul + = \ ": \" out << getSeconds () time + = out.str ()

Începeți în partea de sus a constructorului, Ceas (). Aceasta este o clasă foarte simplă, deoarece nu trebuie să faceți nimic special acolo, deoarece constructorul este gol. Apoi veți găsi funcțiile getHours, minute și secunde. Aceste funcții încarcă ora locală, măsurată în secunde, GMT, din ianuarie 1970. În multe computere, devine o structură tm furnizată de bibliotecile C ++ și în final afișează timpul, minutele și secundele într-un mod ușor de înțeles interpretare pentru oameni. În cele din urmă, getTime concatetează aceste valori într-un șir de format separat prin virgulă între ore, minute și secunde.

Pasul 4

Creați un program simplu pentru al utiliza. Deschideți fișierul principal.cpp și scrieți următorul program în:

include

include \ "clock.h \" int principal (int argc, char * const argv []) {

Ceas * ceas = nou Ceas () std :: cout

Acest program simplu creează un nou obiect de ceas, care încarcă timpul sistemului. În cele din urmă, returnează valoarea zero sistemului de operare, pentru a confirma că programul a fost executat cu succes și fără erori.