フィールド名を関数テンプレートに渡す方法があるかどうか疑問に思っています。次の点を考慮してください。
struct Type1{
unsigned int Field1;
unsigned int Field2;
};
struct Type2{
unsigned int Field2;
unsigned int Field3;
};
template <typename TYPE>
bool MyFunction(TYPE _Type){
if(_Type.Field1==5)
return false;
}
これは正常に機能しますが、MyFunction
指定.Field1
している範囲内で、このフィールドの名前をテンプレートに渡す方法はありますか。たとえば、次のようになります。
void TestFunction(){
Type1 mt1;
MyFunction(mt1, Field1);
}
明らかに、私はここで型をテンプレート化しているわけではなく、これが何と呼ばれるかについて途方に暮れています (明白な答え以外は-ばかげています!) ので、解決策を探すのに苦労しています.