У меня есть эти классы:
class FS{
static char mount(Partition* p)
{return myImpl->mount(p);}
/*...*/
KernelFS* myImpl;
};
class KernelFS{
char mount(Partition* p){
/*...*/
while(available[i]) i++;
}
/*...*/
static bool available[26];
};
Основная программа использует только статические функции из FS, например:
void main(){
Partition* p=/*...*/;
FS::mount(p);
/*...*/
}
Когда вызывается FS :: mount (p), она вызываетmyImpl-> mount (p) (это функция из класса KernelFS).И вот проблема.Когда дело доходит до
while(available[i]) i++;
... оно ломается!Я думаю, проблема в том, что я не инициализировал доступный массив [26], и я понятия не имею, как это сделать ... В чем еще может быть проблема?Пожалуйста, помогите.
Кстати, main () никогда не создает объекты FS или KernelFS, поэтому я думаю, что конструкторы не используются ...