Robie sobie taki prosty program - "Bazodanowiec", ale napotkałem błąd.
plik main.cpp :
#include <iostream>
using namespace std;
#include "baza.h"
//deklaracje funkcji
int wybor(bool (*wsk_zatwierdz) (int));
bool czy_dobra(int liczba);
int main(){
cout<<"\n\n********** Bazowanowiec v.0.2 **************\n";
cout<<"* Co chcesz zrobic ? *\n";
cout<<"* 1. Utworzyc baze danych. *\n"
<<"* 2. Odczytac baze danych. *\n"
<<"* 3. Skasowac baze danych. *\n"
<<"* 4. Edytowac baze danych. *\n"
<<"* 5. Exit. *\n"
<<"********************************************\n";
int x;
x = wybor(czy_dobra);
switch (x){
case 1:
cout<<"Tworzymy\n";
cout<<"Podaj nazwe bazy danych:";
char naz[80];
cin>> naz;
baza pierwsza(char naz);
pierwsza.wypisz();
break;
case 2:
cout<<"Odczytujemy\n";
break;
case 3:
cout<<"Kasujemy\n";
break;
case 4:
cout<<"Edytujemy\n";
break;
case 5:
cout<<"No to koniec\n";
break;
}
}
//************************************
//funkcje
bool czy_dobra(int liczba){
if (liczba == 1 || liczba == 2 || liczba == 3 || liczba == 4 || liczba ==5)
{
return true;
}
else
cout<<"Blad !!! Zla opcja !!!\n"
<<"Podaj prawidlowa opcje\n";
return false;
}
int wybor(bool (*wsk_zatwierdz) (int) ) {
int odpowiedz;
bool zatwierdzone = true;
do
{
cout<<"Podaj opcje:\n"
<<">";
cin>>odpowiedz;
if(wsk_zatwierdz)
{
zatwierdzone = wsk_zatwierdz(odpowiedz);
}
else
zatwierdzone = true;
}while(!zatwierdzone);
return odpowiedz;
}
Plik baza.h :
#ifndef BAZA_H_
#define BAZA_H_
//**************************************
//baza.h
//**************************************
#include <iostream>
using namespace std;
/////////////////////////////////////////////////////////////////////
class baza
{
char plik_naz[85];
char imie[80];
char nazwisko[80];
public:
baza(char nazwa[80]);
void wypisz();
};
#endif
i baza.cpp :
#include "baza.h"
#include<iostream>
using namespace std;
//***************************
void baza::baza(char nazwa[80]){
plik_naz = nazwa;
}
void baza::wypisz(){
cout<<plik_naz<<"\n";
}
Kompilator wywala : main.cpp: In function ‘int main()’:
main.cpp:28: error: request for member ‘wypisz’ in ‘pierwsza’, which is of non-class type ‘baza ()(char)’
Co robie źle ?