Я пытаюсь сделать мою программу на нескольких языках, при запуске пользователя спрашивают, хочет ли он language1 или language2.Пользовательский ввод сохраняется в переменной, а затем с помощью оператора if я получаю язык, который выбрал пользователь.
Примерно так:
std::cin >> language;
if(language == ENGLISH)
{
// Do something
}
else if(language == SPANISH)
{
// Do something else
}
Я сделал следующее: я сохранил каждую функцию, которую хочу преобразовать, в два заголовочных файла, один английский и один испанский, оба заголовочных файла являютсяточно так же, за исключением того, что каждый вывод переведен.
Теперь то, что я сделал, выглядит примерно так
std::cin >> language;
if(language == ENGLISH)
{
#include "English.h"
}
else if(language == SPANISH)
{
#include "Spanish.h"
}
Теперь #include
- это директива препроцессора, поэтому она "исполняется" раньшеосновная функция, как-нибудь обойти это?