これは宿題ですが、どうすればいいのかよくわかりません。通常、v3 = v1を作成し、次にiを介してv2をインクリメントし、v2の要素がv3にあるかどうかを確認します。そうでない場合は、v3に追加します。しかし、メソッドの外部でv3を作成することはできません。メソッドの内部で作成しようとすると、それ自体がリセットされます。誰か助けてくれませんか?
これが私が彼らのために持っているコードとこれまでの彼らのラッパー関数です(それは単なるスケルトンです):
// returns a new vector; every element in v1 and every element in v2 are also in this new vector
// if an element appears in both v1 and v2, it is only added once to the new vector
template <typename T> vector<T> vec_union(vector<T> &v1, vector<T> &v2)
{
return v1;
}
template <typename T> vector<T> vec_union(vector<T> &v1, vector<T> &v2, unsigned i)
{
return v1;
}
// returns a new vector; every element that is in both v1 and v2 are also in this new vector
// there are no duplicates in v1 and v2
template <typename T> vector<T> intersection(vector<T> v1, vector<T> v2)
{
return v1;
}
template <typename T> vector<T> intersection(vector<T> v1, vector<T> v2, unsigned i)
{
return v1;
}
// returns a new vector; every element that is in v1 but not v2 are also in this new vector
// there are no duplicates in v1 and v2
template <typename T> vector<T> difference(vector<T> v1, vector<T> v2)
{
return v1;
}
template <typename T> vector<T> difference(vector<T> v1, vector<T> v2, unsigned i)
{
return v1;
}