3
다소 간단해야하지만 그렇지는 않습니다.foreach 루프 사용 - 변수를 읽을 수 없습니다.
여기 내 코드입니다 :
const string[] arrayWithClassNames = ["Math","SomeClass"];
foreach (string s; arrayWithClassNames)
{
methods = ...
foreach ...
}
오히려 간단 허 : 내가 원하는 무엇
string cases()
{
string ret = "";
string[] methods;
methods = [__traits(derivedMembers,mixin("Math"))];
foreach (string s; methods) ret ~= "case \"" ~ s ~ "\": return Math."~s~"(params);";
methods = [__traits(derivedMembers,mixin("OtherClass"))];
foreach (string s; methods) ret ~= "case \"" ~ s ~ "\": return OtherClass."~s~"(params);";
return ret;
}
string execute(string what, string[] params)
{
switch (what)
{
mixin(cases());
default: break;
}
return "";
}
? 문제는 다음과 같이 불평합니다.
variable 's' cannot be read at compile time.
아이디어가 있으십니까?
A-M-A-Z-I-N-G! 고마워요! :-) –