Non capisco perchè non riesco a compilare questo programma!

ccms_main.h
codice:
//Classe principale

#include <string>
using std::string;

class ccms_main
{
public:
	ccms_main( float ); //costruttore
	void setData( float ); //prototipo setData()
	float getData(); //prototipo getData()
	void displayMessage(); //prototipo displayMessage()

private:
	float versione;
};
ccms_main.cpp
codice:
//definizione classe ccms_main
#include "../h/ccms_main.h"
#include <iostream>
using std::cout;
using std::endl;

ccms_main::ccms_main( float dato )
{
    setData( dato );
}

void ccms_main::setData( float dato )
{
	versione = dato;
}

float ccms_main::getData()
{
	return versione;
}

void ccms_main::displayMessage()
{
	cout << "RuC++ " << getData() << " - Copyright 2009/2010 Nicola Mustone" << endl;
	cout << "http://www.sirdaniel.altervista.org" << endl;
}
ruc++.cpp
codice:
#include <iostream>
using std::cout;
using std::cin;
using std::endl;

#include "classes/h/ccms_main.h"

int main()
{
	ccms_main prova1( 8.0 );
	ccms_main prova2( 9.0 );

	cout << prova1.displayMessage() << endl;
	cout << prova2.displayMessage() << endl;

	int a;
	cin >> a;
	return 0;
}
L'errore che mi da è questo


Compilazione in corso...
ccms_main.cpp
ruc++.cpp
e:\sir daniel\c++\ruc++\ruc++.cpp(13) : error C2679: '<<' binario: non è stato trovato alcun operatore che accetti un operando destro di tipo 'void'. È anche possibile che non vi siano conversioni accettabili.
e:\programmi\microsoft visual studio 9.0\vc\include\ostream(653): potrebbe essere 'std::basic_ostream<_Elem,_Traits> &std:perator <<>(std::basic_ostream<_Elem,_Traits> &,const char *)' [trovato utilizzando una ricerca dipendente dall'argomento]
with
[
_Elem=char,
_Traits=std::char_traits
]
e:\programmi\microsoft visual studio 9.0\vc\include\ostream(700): o 'std::basic_ostream<_Elem,_Traits> &std:perator <<>(std::basic_ostream<_Elem,_Traits> &,char)' [trovato utilizzando una ricerca dipendente dall'argomento]
with
[
_Elem=char,
_Traits=std::char_traits
]
e:\programmi\microsoft visual studio 9.0\vc\include\ostream(738): o 'std::basic_ostream<_Elem,_Traits> &std:perator <<>(std::basic_ostream<_Elem,_Traits> &,const char *)' [trovato utilizzando una ricerca dipendente dall'argomento]

[...]

durante la ricerca di corrispondenza con l'elenco di argomenti '(std:stream, void)'
Generazione del codice in corso...

Risultati


Il log di compilazione è stato salvato in 'file://e:\SiR DanieL\C++\RuC++\RuC++\Debug\BuildLog.htm'
RuC++ - 2 errore/i, 0 avviso/i