>5.3.4 New >The new-expression attempts to create an object of the type-id or >new-type-id to which it is applied. (中略) If the entity is a >non-array object, the new-expression returns a pointer to the object >created.
パラグラフの最後に"new は「生成された」オブジェクトのポインタを返す" ってあるから、コンストラクタは通らないとまずいんじゃないかな。 コンストラクタを通らないと created にはならないんでは。 the object allocated なら別だけども。
なお、istream_iterator の宣言は↓の通りなのでそのコード間違ってるよ? template <class T, class charT = char, class traits = char_traits<charT>, class Distance = ptrdiff_t> class istream_iterator:
12.1.7 (ISO/IEC 14882/2003) The implicitly-defined default constructor performs the set of initializations of the class that would be performed by a user-written default constructor for that class with an empty mem-initializer-list (12.6.2) and an empty function body.