私はC++でコーディングされたゲームを開発中で、実行時に言語を変更できるようにしたいと考えています。現在、言語がそうのように、ヘッダファイルを(言語定義を有する)を含むことにより、コンパイル時に選択されます。C++の条件付きインクルードファイルランタイム
#include "lan_eng.h"
そのため、ゲームは、クライアントがコンパイルされた後の言語を変更することはできません。私の質問は、実行時に条件付きでファイルを含めることができる方法があるかどうかです。維持することが容易になりますが、問題は、私はそれはコンパイル時にのみ動作すると信じていることである
#define DEF_LANGUAGE_ENG
//#define DEF_LANGUAGE_DEN
#ifdef DEF_LANGUAGE_ENG
#include "lan_eng.h"
#endif
#ifdef DEF_LANGUAGE_DEN
#include "lan_den.h"
#endif
確かに:私はこのような何かを行うことができると考えていた最初のように、私は、C++に新しいです。選択した言語を実行時に変更される変数に格納し、その変数を使用してどのヘッダーファイルを含めるかを選択できます。ヘッダーファイルでこれを行う方法はありますか、クラスを作ることを余儀なくされますか?
私はそれが愚かな質問ではないことを願っています。私の検索は、私が望んでいた結果を私に与えてくれませんでした。
ありがとうございます!
プリプロセッサは、ビルドプロセスの第1段階です。したがって、AFAIK、実行時のヘッダーのインクルードは不可能かもしれません。 – Mahesh