Salve a tutti, avevo intenzione di realizzare un programma in C++ utilizzando una classe.
È la prima volta che ne utilizzo una ed infatti ho riscontrato alcuni problemi che spero voi riusciate a risolvermi, aiutandomi ad imparare

Questa è la codifica:

codice:
#include <iostream.h>
using namespace std;

class alunno {
	public:
	int materie,materia;
	float matrice[materie][3];
	float GetMedia() {
		for(int i=0;i<3;i++)
			float media[materia]+=matrice[materia][i];
		return media[materia];
		}
	float TotalMedia() {
		for(int i=0;i<3;i++)
			{
			for(int k=0;k<materie;k++)
				float mediaTot+=matrice[materia][i];
			}
		return mediaTot;
		}
	};

int main() {
alunno pallino;
cout << "Quante materie sono?" << endl;
cin >> pallino.materie;
cout << "Tra " << pallino.materie << "materie, con quale iniziamo? (indicare con 1 per la prima, 2 per la seconda e così via)" << endl;
cin >> pallino.materia;
for (int i=0;i<pallino.materie;i++)
{
	switch(i)
	{
	case 0: cout << "Inserisci voto orale" << endl;break;
	case 1:	cout << "Inserisci voto scritto" << endl;break;
	case 2:	cout << "Inserisci voto pratico" << endl;break;
	default: continue;
	}
	cin >> pallino.matrice[pallino.materia][i];
}
cout << "La media è " << GetMedia() << endl;
return 0;
}
I problemi in compilazione sono questi:

codice:
classe.cpp:6: error: invalid use of non-static data member ‘alunno::materie’
classe.cpp:7: error: from this location
classe.cpp:7: error: array bound is not an integer constant
classe.cpp: In member function ‘float alunno::GetMedia()’:
classe.cpp:10: error: expected initializer before ‘+=’ token
classe.cpp:11: error: ‘media’ was not declared in this scope
classe.cpp: In member function ‘float alunno::TotalMedia()’:
classe.cpp:17: error: expected initializer before ‘+=’ token
classe.cpp:19: error: ‘mediaTot’ was not declared in this scope
classe.cpp: In function ‘int main()’:
classe.cpp:38: error: ‘class alunno’ has no member named ‘matrice’
classe.cpp:40: error: ‘GetMedia’ was not declared in this scope
Come potrei risolvere?
Grazie a tutti per eventuali risposte!