Appunti_Programmazione_OOP/LAB2/Lezione2/ref.cpp
2025-01-30 02:34:55 +01:00

61 lines
1.8 KiB
C++

#include <stdio.h>
#include <string>
// classe test
class Meow {
private:
std::string m_NomeGatto;
int m_Ripetizione;
public:
Meow(const std::string &NomeGatto,const int &Ripetizioni)
: m_NomeGatto(NomeGatto),
m_Ripetizione(Ripetizioni) { // Scope Costructor
puts("\nClasse inizializzata.");
puts("##########Costruttore###########");
printf("Valore:\t\tm_NomeGatto: %s\n", m_NomeGatto.c_str());
printf("Indirizzo:\tm_NomeGatto: %p\n", &m_NomeGatto);
printf("Valore:\t\tm_Ripetizioni: %d\n", m_Ripetizione);
printf("Indirizzo:\tm_Ripetizioni: %p\n", &m_Ripetizione);
// riferimento
puts("##########Riferimento###########");
printf("Valore:\t\tNomeGatto: %s\n", NomeGatto.c_str());
printf("Indirizzo:\tNomeGatto: %p\n", &NomeGatto);
printf("Valore:\t\tRipetizioni: %d\n", Ripetizioni);
printf("Indirizzo:\tRipetizioni: %p\n", &Ripetizioni);
}
// END costructor
void stampami() {
puts(".STAMPAMI() dentro classe");
printf("n_NomeGatto: %s\n", m_NomeGatto.c_str());
printf("m_Ripetizione: %d\n", m_Ripetizione);
};
void CAMBIO() {
m_NomeGatto = "GATTOMODIFICATO";
m_Ripetizione = 21;
puts("\nCAMBIO");
printf("gatto_Valore: \t%s\n", m_NomeGatto.c_str());
printf("gatto_Indiri: \t%p\n", &m_NomeGatto);
printf("n_Valore: \t%d\n", m_Ripetizione);
printf("n_Indirizzo: \t%p\n", &m_Ripetizione);
}
};
int main(int argc, char const *argv[]) {
std::string gatto = "meow";
int n = 3;
printf("1 Gatto: %s\n", gatto.c_str());
printf("Indirizzo gatto: %p\n", &gatto);
printf("1 N: %d\n", n);
printf("Indirizzo N: %p\n", &n);
Meow gatto1(gatto, n);
gatto1.stampami();
gatto1.CAMBIO();
}