Re: constructing vector<POD> that is member of a class from an input
stream (file)
On Nov 17, 12:02 pm, "Hicham Mouline" <hic...@mouline.org> wrote:
Hello,
I have a text file with this format:
floating11 floating12 floating13 floating14
floating21 floating22 floating23 floating24
...
floatingN1 floatingN2 floatingN3 floatingN4
I have a simple struct
struct F {
double d1;
double d2;
double d3;
double d4;
};
and a
std::vector<F> v;
then a class C which adds intelligence to the processing of the vector of
Fs.
class C {
C(const std::istream& input);
private:
std::vector<F> v_;
};
I wish to construct an instance of C from a file.
I thought to use the iterator form of vector<F>'s ctor.
Do I write an iterator class that when dereferenced, points to an instanc=
e
of F, so that I can do
C::C(const std::istream& input)
: v_( begin, end )
{}
Was there a stream_iterator in std?
I understand there is some elegant form to fill up a vector as;
std::copy( ? , ? , v_.back_inserter() );
Is there a similar form for vector construction?
Use std::istream_iterator<>.
You need to define operator<< for F.