D2のenum
タイプの名前と値を取得したいと考えています。私はstd.traitsを使ってenum値を得ることができますが、名前はどうですか?Dの列挙型のメンバーの名前と値を取得することは可能ですか?
を考える:
enum lst
{
apple,
bottle,
orange,
blue
}
私のような連想配列を取得したいと思います。
string lstmap[int] = [1:"apple", 2:"bottle", 3:"orange", 4:"blue"].
答えはイエスです。誰かが私に示したように、溶液は、次のとおりです。
(コミュニティのwikiとして質問からコピーされた)foreach (i, member; __traits(allMembers, lst)) {
lstmap[cast(int) __traits(getMember, lst, member)] = member;
}
あなたは答えをあなた自身で提出し、受け入れられたとしてマークして、質問がもはや未回答として現れないようにしてください。 – klickverbot