klasy.h
Kod: Zaznacz cały
#ifndef KLASA_H
#define KLASA_H
class licznikb;
class licznika
{
public:
licznika* obiektlicznika;
float a;
float pobierza();
licznika() {licznika* obiektlicznika;};
~licznika() {};
};
class licznikb
{
public:
licznikb* obiektlicznikb;
float b;
float pobierzb();
licznikb() {licznikb* obiektlicznikb;};
~licznikb() {};
};
class dodawanie : public licznika, public licznikb
{
public:
licznika* obiektlicznika;
licznikb* obiektlicznikb;
dodawanie* obiektdodawanie;
float wynik;
float dodaj();
dodawanie() {licznika* obiektlicznika; licznikb* obiektlicznikb; dodawanie* obiektdodawanie;};
~dodawanie() {};
};
#endif // KLASA_H
Kod: Zaznacz cały
#include <iostream>
#include "klasa.h"
float licznika::pobierza()
{
std::cin >> a;
return a;
};
float licznikb::pobierzb()
{
std::cin >> b;
return b;
};
float dodawanie::dodaj()
{
std::cout << (a + b);
};
Kod: Zaznacz cały
#include <iostream>
#include "klasa.h"
main()
{
dodawanie *obiektdodawanie = new dodawanie;
licznika* obiektlicznika = new licznika;
licznikb* obiektlicznikb = new licznikb;
obiektlicznika->pobierza();
obiektlicznikb->pobierzb();
std::cout << obiektdodawanie->dodaj();
delete obiektdodawanie;
delete obiektlicznika;
delete obiektlicznikb;
}
Dopiero uczę się o wskaźnikach więc bardzo możliwe, że w kodzie są błędy ale jakie nie wiem. Z drugiej strony w innym kodzie z jedną klasą wykonującym też proste obliczenia w wyniku również otrzymuję same zera. Jako kompilatora używam QtCreator.
Za pomoc wielkie dzięki