0

次のコードが正常に機能する理由:

template <typename Set, typename Vector> void copySetToVector2(Set &s, Vector &v)
{
    copy(s.begin(), s.end(), inserter(v, v.begin()));
}

int main()
{
    set<int> s1;
    s1.insert(1);
    s1.insert(2);
    s1.insert(3);

    vector<int> v1;

    copySetToVector2(s1, v1);
    return 0;
}

しかし、テンプレート関数コンパイラで変数をポインターに変更すると、エラーが発生します。

'std::set< int >*' は、クラス、構造体、または共用体型ではありません

ここで何が問題なのですか?

4

1 に答える 1