Тема: Створення масиву методів
Я раніше створював масив функцій для того щоб не використовувати розгалуження.
Ось приклад
#include <stdlib.h>
#include <iostream>
#include <conio.h>
using namespace std;
void main1()
{
cout << "-> " << (char)251 << "1";
}
void main2()
{
cout << "-> " << (char)251 << "2";
}
void main3()
{
cout << "-> " << (char)251 << "3";
}
void main4()
{
cout << "-> " << (char)251 << "4";
}
void Go_exit()
{
exit(0);
}
void(*MAS_FYNK[5])() = {main1,main2,main3,main4,Go_exit};
int main()
{
int namber_main;
cout << "1) - \n2) - \n3) - \n4) - \n5) - Exit\nEnter the namber ->";
cin >> namber_main;
namber_main = abs(namber_main);
if (namber_main > 5 || namber_main == 0)
cout << "Error! " << namber_main << " > 5";
else
MAS_FYNK[namber_main - 1]();
getch();
return 0;
}
але в класі чомусь не виходить, підкажіть чому ?
файл MyClass.h (на ньому я і хочу створити масив методів)
#pragma once
class MyClass
{
int choice;//Вибір пункта меню
public:
MyClass();
~MyClass();
void Menu();
void CheckingStatements();
void(*Items[1])() = { CheckingStatements };
};
і інші файли
#include "MyClass.h"
#include <iostream>
using namespace std;
MyClass::MyClass()
{
}
MyClass::~MyClass()
{
}
void MyClass::Menu()
{
cout << "1 - Знайти чи є вірним висловлювання";
cout << "->";
cin >> choice;
}
#include <iostream>
#include <conio.h>
#include "MyClass.h"
using namespace std;
int main()
{
setlocale(LC_ALL, "");
MyClass obj;
obj.Menu();
getch();
return 0;
}