...leggi il regolamento... metti un titolo esplicativo...
... metti il codice tra [ code] e [/ code] senza spazi...
I principali errori che hai fatto sono:
stai confondendo dichiarazione, definizione e chiamata di una funzione.
DICHIARAZIONE
Indichi semplicemente il nome ed i parametri della funzione
DEVI mettere il tipo dei parametri (e tipo restituito)
PUOI mettere il nome dei parametri
DEVI mettere il punto-e-virgola alla fine.
Esempio:
int calcola(int a, int b);
DEFINIZIONE
Scrivi tutte le istruzioni della funzione.
DEVI mettere l'elenco dei parametri (e tipo restituito)
NON va messo il ;
Servono invece le parentesi graffe.
CHIAMATA
Fai eseguire la funzione.
NON va messo il tipo restituito e dei parametri
DEVI mettere il ;
Altro errore: rivediti come si indicano gli elementi di un vettore.
NON:
Giusto:
codice:
// "imposta il primo elemento al valore 0 (carattere ASCII)"
codice[0] = '\0';
Altro erroraccio: non confondere interi con caratteri (strcpy va a caratteri).
Io ho usato un codice di caratteri.
Altro errore: hai dichiarato un distruttore, ma non definito! Se non serve non metterlo!
Codice corretto:
codice:
#include <iostream>
#include <string>
#include <cstdlib>
using namespace std;
class videoteca
{
private:
char codice[5];
// Qui va il punto e virgola!
// Errato: char titolo[20], regista[20],
char titolo[20], regista[20];
public:
videoteca();
videoteca(char a[]);
videoteca(char b[], char c[]);
char* leggicodice();
char* leggititolo();
char* leggiregista();
};
videoteca::videoteca()
{
// Molto più corretto
codice[0] = '\0';
titolo[0] = '\0';
regista[0] = '\0';
}
videoteca::videoteca(char a[])
{
// int cosa???
//int strcpy (int codice[], int a[]);
// E poi a è di interi... e non va bene...cambiato
strcpy(codice, a);
}
// Un punto e virgola di troppo!
videoteca::videoteca (char b[], char c[])
{
strcpy (titolo, b);
strcpy (regista, c);
}
// Nelle DEFINIZIONI non và il punto e virgola!
// Restituisci un vettore o un singolo numero?
char* videoteca::leggicodice()
{
return codice;
}
char* videoteca::leggititolo()
{
return titolo;
}
char* videoteca::leggiregista()
{
return regista;
}
int main()
{
videoteca v1;
cout<<"Il titolo è:"<<v1.leggititolo();
cout<<"Il regista è:"<<v1.leggiregista();
cout<<"Il codice è:"<<v1.leggicodice();
system("pause");
return 0;
}