Mi da 44 errori il compilatore se volete posto il codice completo:
Questa è la classe calciatore derivata da individuo
Codice PHP:
#include <iostream>
#include <string>
#include "individuo_class.h"
using namespace std;
//creo la classe calciatore derivata dalla classe individuo
class calciatore: public individuo {
public:
    
string squadra;
    
int gol;
    
string ruolo;
    
//Costruttore di default
    
calciatore() {
    
nome "";
    
cognome "";
    
eta 0;
    
squadra "";
    
gol 0;
    
ruolo "";
    }
    
//costruttore
    
calciatore(string namestring surnameint agestring teamint goalsstring role):individuo(name,surname,age) {
    
squadra team;
    
gol goals;
    
ruolo role;
    }
    
void capocannoniere();
}; 
Classe individuo
Codice PHP:
#ifndef individuo_class_h
#define individuo_class_h
#include <string>
using namespace std;
class 
individuo {
    public:
        
string nome;
        
string cognome;
        
int eta;
        
//Costruttore di default
        
individuo() {
        
nome "";
        
cognome "";
        
eta 0;
        }
        
//Costruttore
        
individuo (string namestring surnameint age) {
        
nome name;
        
cognome surname;
        
eta age;
        }
        
//Distruttore
        
~individuo() {
        
cout << "Libero la memoria occupata...";
        }
};
#endif 
codice per la funzione capocannoniere
Codice PHP:
#include <iostream>
#include <string>
#include <list>
#include "calciatore_class.h"
using namespace std;

void calciatore::capocannoniere() {
 
//Puntatore al file
FILE *filepunt;
if((
filepunt fopen("calciatori.dat","rb"))==NULL)
    { 
    
//Il file non esiste non posso eliminare nessun calciatore
    //Restituisco un messaggio di errore
    
cout << "\n  Il file 'calciatori.dat' e' inesistente.\nNon e' stata inserit nessun calciatore!";
} else {
    list<
calciatorelista;
    
calciatore kicker_temp;
    
//inserisco nella list tutti gli elementi
    
while(fread (&kicker_temp ,sizeof(calciatore),1,filepunt) && !feof(filepunt)) 
    {          
lista.push_back(kicker_temp);
    }

    
struct SortProcess : public std::binary_function <calciatorecalciatorebool> {
        
    
bool operator()(calciatore &calciatore &b){
                    if(
a.gol<b.gol){return true;}
                    return 
false;
            };
};
    
lista.sort(SortProcess());

                    
cout << "Nome";
                    
cout << "\tCognome";
                    
cout << "\tSquadra";
                    
cout << "\tGol";
                    
cout << "\n" << endl;
                    list<
calciatore>::iterator it;
                    for(
it lista.begin(); it lista.end(); it++){
                    
cout << nome;
                    
cout << "\t" << cognome;
                    
cout << "\t" << squadra;
                    
cout << "\t" << gol;
                    
cout << endl;
    }
}