Witam,
ulepszyłem Twój kod plus dodałem komentarze. Nie wiem czy dokładnie o to chodziło gdyż pytanie jest chaotyczne
#include <iostream>
#include <ctime>
class Data{
public:
int rok;
int dzien;
int miesiac;
std::string przypomnienie;
Data() {
time_t tt;
struct tm* ti;
time(&tt);
ti = localtime(&tt);
this->dzien = ti->tm_mday;
this->miesiac = ti->tm_mon+1; // months since January 0-11
this->rok = ti->tm_year + 1900; // years since 1900
}
Data(int r, int m, int d) {
this->rok = r;
this->dzien = d;
this->miesiac = m;
}
void zapisz_wiadomosc() {
std::cin >> przypomnienie;
}
void dodaj_dzien() {
//mozesz jeszcze wprowadzić czy w danym miesiacu 31 miesci sie w zakresie. Plus obsluga lutego
std::cin >> dzien;
if (dzien < 1 || dzien > 31) {
std::cout << "Podales zly dzien";
}
}
void wypisz() {
//Tutaj wypisujesz skladniki klasy. Nie ma sensu wywolywac konstruktora
std::cout << "Dzien " << dzien << " Miesiac " << miesiac << " Rok " << rok << std::endl;
}
};
int main()
{
//Wywolujac funkcje uzywaj nawiasow ().
Data d1;
d1.wypisz();
Data d2(2019,3,11);
d2.wypisz();
return 0;
}
Więcej informacji odnośnie struktury tm. Tam masz opisane czemu dodajemy te stałe do wartości i możesz je użyć w inny sposób.
http://www.cplusplus.com/reference/ctime/tm/
Co do obiektu to wywołując funkcje składową musisz sprawdzać dostępność składnika private|protected|public a wywołujesz to następująco
Data d1;
d1.rok; // zmienna o dostępie publicznym
d1.wypisz(); // funkcja z argumentami o dostępie publicznym
Dodatkowo polecam zapoznać się z obsługą funkcji. Funkcje mogą również zwracać wartości
http://cpp0x.pl/kursy/Kurs-C++/Poziom-2/Funkcje-pierwsze-starcie/291