C++ で標準ライブラリを学習しようとしており、自分のコードを実行しようとしていますが、うまくいきません。プログラムを正常に実行するには、何を忘れて、クラス「クラス」に何を追加する必要がありますか?
#include <iostream>
#include <vector>
#include <list>
#include <algorithm>
#include <iterator>
using namespace std;
class Class {
public:
Class (int ii, double dd ) : ival(ii) { dval = new double; *dval = dd; }
~Class() { delete dval; }
private:
int ival;
double *dval;
};
int main()
{
vector<Class> vec;
list<Class> list;
vec.push_back( Class(1, 2.2) );
vec.push_back( Class(2, 4.3) );
vec.push_back( Class(3, 5.7) );
ostream_iterator<const Class> classout(cout,"\n");
copy( vec.begin(), vec.end(), classout );
}
私は基本的にコピーアルゴリズムを理解し、使用しようとしています:
template
OutputIterator copy ( InputIterator first, InputIterator last,
OutputIterator result )
{
while (first!=last) *result++ = *first++;
return result;
}