Hallo Miteinander!
Mein Problem ist innerhalb meines Projekts nicht leicht zu verstehen, deshalb habe ich ein kleines Programm geschrieben das sich nur auf das eigentliche Problem beschränkt.
Ich denke wer den Code-Block nicht übersprungen hat ahnt schon was mein Problem ist.
Ich habe eine Klasse (hier) big_class die so groß ist, dass sie mir zu unübersichtlich wird und ich sie in unter-classen unterteilen möchte.
Die "Unterklasse" (hier) subdivision muss dabei bei Problemen eine Fehler-Behandlungs-Funktion aufrufen die wiederum Teil der übergeordneten big_class ist.
Beim Compilieren bekomme ich den Fehler "error C2352: Unzulässiger Aufruf einer nicht statischen Memberfunktion"
Ich weiß dass es sowas wie Vererbung gibt und es wohl sowas wie eine Lösung für mein Problem geben könnte, habe auch schon selbst danach gesucht, es aber nicht verstanden bzw. nicht anwenden können.
Könnt ihr mir helfen? Geht das was ich machen will überhaupt? Das ganze erfüllt keinen technischen zweck, es verbessert das fertig compilierte Programm nicht wirklich und ich könnte natürlich auch einfach alle Member der subdivision direkt in die big_class schreiben, nur dadurch wird diese eben unheimlich unübersichtlich und das versuche ich zu verhindern.
Gruß
LFP
Mein Problem ist innerhalb meines Projekts nicht leicht zu verstehen, deshalb habe ich ein kleines Programm geschrieben das sich nur auf das eigentliche Problem beschränkt.
Code:
#include<iostream>
using namespace std;
class big_class {
private:
//nothing
public:
void general_error_to_log_file_function(char* error_description);
class subdivision {
private:
//nothing
public:
void any_function ();
} my_subdivision;
};
void big_class::general_error_to_log_file_function (char* error_description){
// write the description of the error into the log-file
}
void big_class::subdivision::any_function(){
//do whatever
//do whatever
//do whatever
if(1){ //if anything goes wrong
general_error_to_log_file_function("error in any_function of subdivision!");
}
}
int main(){
big_class my_class;
my_class.my_subdivision.any_function();
return 0;
}
Ich denke wer den Code-Block nicht übersprungen hat ahnt schon was mein Problem ist.
Ich habe eine Klasse (hier) big_class die so groß ist, dass sie mir zu unübersichtlich wird und ich sie in unter-classen unterteilen möchte.
Die "Unterklasse" (hier) subdivision muss dabei bei Problemen eine Fehler-Behandlungs-Funktion aufrufen die wiederum Teil der übergeordneten big_class ist.
Beim Compilieren bekomme ich den Fehler "error C2352: Unzulässiger Aufruf einer nicht statischen Memberfunktion"
Ich weiß dass es sowas wie Vererbung gibt und es wohl sowas wie eine Lösung für mein Problem geben könnte, habe auch schon selbst danach gesucht, es aber nicht verstanden bzw. nicht anwenden können.
Könnt ihr mir helfen? Geht das was ich machen will überhaupt? Das ganze erfüllt keinen technischen zweck, es verbessert das fertig compilierte Programm nicht wirklich und ich könnte natürlich auch einfach alle Member der subdivision direkt in die big_class schreiben, nur dadurch wird diese eben unheimlich unübersichtlich und das versuche ich zu verhindern.
Gruß
LFP