61 lines
1.8 KiB
C++
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();
|
|
}
|