Erstellen Sie die Datumsklasse in C ++

Erstellen Sie die Datumsklasse in C ++
In diesem Artikel werden wir uns untersuchen. Die C ++ - Sprache enthält Datums- und Zeitmethoden und Klassen. Um Zeit und Datum zu verwalten, müssen wir die Bibliothek in die Programme integrieren. Die Klasse 'Datum' enthält einen Standardkonstruktor mit drei Argumenten, mit denen das Datum angepasst werden kann, wenn ein Datumselement erstellt wird.

Erstellen Sie eine Datumsklasse, um die Objekte zu erwerben

Die Klasse enthält eine Date () -Funktion, die das aktuelle Kalenderdatum als Instanz bereitstellt. Verwenden Sie (->) diesen Zeiger auf die Datumsvariable, wir werden eine Vielzahl von Daten abrufen. Dieser C ++ - Code wurde erfolgreich zusammengestellt und ausgeführt.

#enthalten
#enthalten
Std :: String Monate [] = "Jan", "Feb", "Mar", "Apr", "May", "Jun",
"Jul", "Aug", "SEP", "Oct", "Nov", "Dec";
Std :: String Days [] = "Sun", "Mon", "Di", "Mi", "Thu", "Fr.",
"SAT";
Klassendatum
Privatgelände:
std :: String Monat;
std :: string tag;
int Datum;
int Jahr;
öffentlich:
Datum()
const int base_year = 1900;
Time_t Timer;
tm * Zeit;
std :: time (& timer);
time = LocalTime (& Timer);
Datum = Zeit-> tm_mday;
Monat = Monate [Zeit-> tm_mon];
Tag = Tage [Zeit-> tm_wday];
Jahr = zeit-> tm_year + base_year;

Zunächst geben wir zwei wichtige Header -Dateien ein und fügen uns ein . Wir deklarieren zwei Arrays und geben die Elemente dieser Arrays an. Das erste Array repräsentiert die Namen von 12 Monaten, und das zweite Array repräsentiert die Namen von Wochentagen. Diese Arrays werden unter Verwendung der Methode "Std :: String" gebildet. Wir deklarieren eine Klasse mit dem Namen "Date". Zu den privaten Komponenten gehören die Reihe von Monaten, Tagen und Variablen zum Speichern von Datum und Jahr. Diese Variablen haben einen "Ganzzahl" -Datentyp.

Im nächsten Schritt geben wir die öffentlichen Mitglieder der Klasse an. Der Standardkonstruktor 'Datum ()' wurde aufgerufen. Wir setzen den Wert des "Base_year", der den "int" -Patentyp hat. Wir erstellen für die Zeit einen Zeiger 'tm *'. Wir nennen die Funktion std :: time () und bestehen den 'Timer' als Argument dieser Funktion. Die "Zeit" sollte auf die Variable "tm_mday" hingewiesen werden, indem der Operator (->) verwendet wird. Die "Zeit" wird auf das 'tm_mon' hingewiesen, um den Monat anzuzeigen.

Für den Erwerb des Tages wird "Unentschieden" auf die Variable "tm_wday" hingewiesen. Um das Jahr zu erhalten, würde der Wert von 'tm_year' zum Wert von 'Base_year' hinzugefügt werden.

void printdate (void)

std :: Cout<< "The current date: "

~ Date ()
;
int main ()

Datum d;
D.Datum des Drucks();

Darüber hinaus haben wir die PrintDate () -Funktion bezeichnet. Um die Zeile "Das aktuelle Datum" anzuzeigen: Kurz vor dem Datum, haben wir das "std :: cout" verwendet. Um den Monat, den Tag, das Datum und das Jahr zu erhalten, wird dieser Zeiger angewendet. Der Destruktor "~ Date" wird aufgerufen. Wir beginnen die Codierung im Körper der Haupt- () -Funktion. Wir initialisieren die Variable 'D', um das Datum zu speichern. Am Ende nennen wir die PrintDate () -Methode, um das Datum zu veranschaulichen.

Verwenden Sie parametrisierten Konstruktor

Konstruieren Sie eine Datumsklasse in einem Programm mit drei Variablen zum Speichern der Daten: DD, MM und YYYY. Mit Hilfe eines parametrisierten Konstruktors definieren und konfigurieren wir das Objekt und stellen das Datum in der Notation von DD-mon-yjyy dar.

#enthalten
#enthalten
Verwenden von Namespace STD;
Klassendatum

int dd, mm, jyyy;
öffentlich:
Datum (int d, intm, int y)

dd = d;
mm = m;
yjyy = y;

Hohlraum disp ()

if (mm> 12)
Cout<<"Invalid Month.";
anders
Cout<<"Input : "<if (mm == 1)

Cout<<"Output : "<
sonst wenn (mm == 2)

Cout<<"Output : "<

Hier integrieren wir die Bibliotheken und kurz vor dem Standard -Namespace. Wir haben die Klasse "Datum" erstellt. Hier initialisieren wir die Variable 'DD' für den Tag, 'mm' für einen Monat und 'Jyyy' für ein Jahr. Wir konstruieren den parametrisierten Konstruktor dieser Klasse und setzen ihn öffentlich. Wir haben die disp () -Funktion bezeichnet.

Im Körper dieser Funktion wenden wir den IF-ELSE-IF-Zustand an. Wenn der Benutzer den Wert von einem Monat mehr als 12 eingegeben hat, druckt der "Cout" den Text "Ungültiger Monat" auf dem Bildschirm. Andernfalls zeigt 'Cout' das Wort 'Eingabe' an. Wenn der Benutzer den Wert des 1. Monats eingibt, druckt "Cout" den Monat "Jan" aus. "Cout" druckt den Monat "Feb", wenn der Benutzer den Wert von Monat 2 liefert.

sonst wenn (mm == 3)

Cout<<"Output : "<
sonst wenn (mm == 4)

Cout<<"Output : "<
sonst wenn (mm == 5)

Cout<<"Output : "<
sonst wenn (mm == 6)

Cout<<"Output : "<
sonst wenn (mm == 7)

Cout<<"Output : "<
sonst wenn (mm == 8)

Cout<<"Output : "<
sonst wenn (mm == 9)

Cout<<"Output : "<
sonst wenn (mm == 10)

Der "Cout" druckt den "Mar" -Monat, wenn der Benutzer den Wert von Monat 3 angibt. 'cout' zeigt den 'APR' -Monat, wenn der Benutzer den Wert für den 4. Monat usw. eingibt und so weiter.


Cout<<"Output : "<
sonst wenn (mm == 11)

Cout<<"Output : "<
sonst wenn (mm == 12)

Cout<<"Output : "<

;
int main ()

int d, m, y;
Coutd;
Coutm;
Couty;
Datum D1 (D, M, Y);
D1.disp ();
getch ();
return (0);

Darüber hinaus wurden wir als Main () -Funktion bezeichnet. Zuerst initialisieren wir die Variable für die Speicherung des Tages, des Monat und des Jahres. Der Befehl "Cout" wird angewendet, um die Zeile zu drucken. Am Ende erstellen wir eine Illustration der Klasse "Datum". Wir beschäftigen disp () für diese Instanz. Um die Ausgabe für eine Weile auf dem Bildschirm zu halten, haben wir Getch () verwendet und um das Programm zu beenden, fügen wir den Befehl "return 0" hinzu.

Verwenden Sie set () und Get () Funktion

Definieren Sie eine "Datum" -Klasse, die drei Datenelemente enthält: einen Monat (int), einen Tag (int) und ein Jahr (int). Konstruktoren mit unterschiedlichen Argumenten werden in die Klasse aufgenommen, und die Argumente werden verwendet, um diese Datenelemente zu konfigurieren. Jedes Datenelement hat eine SET ()- und GET () -Funktion. Geben Sie daher eine displayDate () -Funktion an, die das Datum zeigt.

#enthalten
#enthalten
Verwenden von Namespace STD;
Klassendatum

öffentlich:
Datum (int, int, int);
void setmonth (int);
int GetMonth ();
void setday (int);
int Getday ();
void setyear (int);
int getyear ();
void displayDate ();
Privatgelände:
int Monat;
int Tag;
int Jahr;
;
Datum :: Datum (int m, int d, int y)

if (m> = 1 && m<=12)
Monat = m;

Zu Beginn des Programms haben wir die Bibliotheken vorgestellt und dann den Standard -Namespace verwendet. Die Klasse mit dem Namen "Datum" wurde deklariert. Die öffentlichen Mitglieder dieser Klasse sind definiert. Datumskonstruktor, void setmonth (), getMonth (), setday (), getday (), setyear (), getyear () und diplaydate () sind alle öffentliche Elemente . Unterschiedliche Funktionen werden von diesen Mitgliedern vertreten.

Die privaten Elemente der Klasse sind im nächsten Schritt angegeben. Monat, Tag und Jahr werden darin enthalten sein. Wir haben das Funktionsdatum verwendet :: Date (). Wenn der ELSE-Zustand angewendet wird. Der Wert des Monats muss größer als 1 und weniger als 12 sein.

anders

Monat = 1;

Tag = D;
Jahr = y;

Void Datum :: setmonth (int m)

if (m> = 1 && m<=12)
Monat = m;
anders

Monat = 1;


void Datum :: setday (int d)

Tag = D;

void Datum :: setyear (int y)

Jahr = y;

int Datum :: GetMonth ()

Rückkehrmonat;

int Datum :: Getday ()

Rückkehrtag;

int Datum :: Getyear ()

Rückkehrjahr;

void Datum :: displayDate ()
Cout<
int main ()

Datum Datum11 (5,7,2022);
Cout<<"Date is ";
Datum1.displayDate ();

Die Funktion setMoth () wird verwendet, um den Monatswert anzupassen. Die SetDay () -Funktion wird angewendet, um den Wert des Tages festzulegen. In ähnlicher Weise haben wir die Funktion setyear () verwendet, um den Jahreswert anzugeben. Wir haben jetzt die Get () -Funktion verwendet, um die Werte von Monat, Tag und Jahr getrennt zu erhalten. Wir haben die Funktion displayDate () verwendet, um das gesamte Datum zu erwerben.

Am Ende haben wir die main () -Funktion aufgerufen. Wir haben ein Mitglied "Datum1" erstellt und das Datum festgelegt. Der Befehl "Cout" druckt das Datum und wir verwenden auch die Methode displayDate () erneut.

Abschluss

Wir haben über die Details der Datumsklasse in diesem Artikel gesprochen. Wir haben drei verschiedene Techniken zum Erstellen der "Date" -Klasse behandelt. Diese Demonstrationen von Methoden sind gut erklärt und erfolgreich implementiert.