#include <iostream>
#include <cstring>
using namespace std;
string DataFromBD()
{
return "Data From BD";
}
string DataFromWEBSER()
{
return "Data From WEBSER";
}
void ShowInfo(string str)
{
cout << str << endl;
}
void main()
{
string a;
cin >> a;
ShowInfo(a());// надо правильно написать здесь!
}
Ваша строка не может указывать на функцию. Можно сделать например так:
std::unordered_map < string, string(*)()> call{
{"DataFromBD", DataFromBD},
{"DataFromWEBSER", DataFromWEBSER}
};
string a;
cin >> a;
ShowInfo(call[a]());
или
string(*F)() = DataFromBD;
string a;
cin >> a;
if (a == "DataFromWEBSER")
F = DataFromWEBSER;
ShowInfo(F());
По разному, только нужно как нибудь указывать на функцию.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Есть базовый класс Computer и производный класс Laptop:
У меня базовый класс с двумя виртуальными методами и два класса-наследникаВ функции main есть массив указателей на базовый класс, который может...
Возможно ли реализовать реализовать именно расширение памяти? Или хотя бы при помощи манипуляций с указателями избежать лишнего копирования...
Скорее всего, данный вопрос не соответствует тематике Stack Overflow на русском, согласно правилам описанным в справке