私は VS2012 IDE に意見の相違があります。最近、C# から C++/CLI に移行しましたが、ほとんどわからないかもしれませんが、この 1 つの小さな隆起を除いて、すべてが順調に進んでいます。私はパラメーター化された型をよく理解していますが、パラメーター化された型を持つものを返す方法を理解できないようです。複数の Web サイトですべてを調べたところ、これには ageneric
と a の2 つの方法があることがわかりました。template
これは私がC#でそれを行う方法です:public static Dictionary<TKey, TVal> MakeDictionary<TKey, TVal>(List<TKey> Keys, List<TVal> Values){/*code*/}
そしてC ++ / CLIで試しました:
generic<typename TKey, typename TVal> static Dictionary<TKey, TVal> ^MakeDictionary<TKey, TVal>(List<TKey> ^Keys, List<TVal> ^Values){/*code*/}
と
template<typename TKey, typename TVal> static Dictionary<TKey, TVal> ^MakeDictionary<TKey, TVal>(List<TKey> ^Keys, List<TVal> ^Values){/*code*/}
とりわけ、コンパイラが TKey と TVal を認識しないという同じ問題が常に発生します。
私の質問: 型パラメーターを指定するにはどうすればよいですか? また、何が間違っているのでしょうか?