64,282
社区成员
发帖
与我相关
我的任务
分享
template<typename T1, typename T2>
std::istream& operator>>(std::istream& in, std::pair<T1, T2>& rhs)
{
in>>rhs.first>>rhs.second;
return in;
}
template<class T>
void accept_any(T)
{}
int main(int argc,char* argv[])
{
typedef pair<int, int> Element;
typedef vector<Element> DataType;
Element e;
ifstream *read;
DataType *data;
accept_any(istream_iterator<Element>(*read) );//通过不了
*read >> e; //可以通过
return 0;
}
void _M_read()
{
_M_ok = (_M_stream && *_M_stream) ? true : false;
if (_M_ok)
{
*_M_stream >> _M_value;//这里报错
_M_ok = *_M_stream ? true : false;
}
}
#include <iostream>
#include <iterator>
#include <fstream>
#include <vector>
#include <algorithm>
using namespace std;
int main()
{
ifstream ifs("test.txt");
istream_iterator<string> ibeg(ifs);
istream_iterator<string> iend;
vector<string> vec(ibeg, iend);
copy(vec.begin(), vec.end(),
ostream_iterator<string>(cout, "\n"));
return 0;
}
copy(istream_iterator<Element>(*(this->read) ),
istream_iterator<Element>(),
back_insert_iterator<DataType>(*(this->data) ) );
#include <iostream>
#include <vector>
#include <fstream>
#include <iterator>
using namespace std;
template<typename T1, typename T2>
std::istream& operator>>(std::istream& in, std::pair <T1, T2>& rhs)
{
in>>rhs.first>>rhs.second;
return in;
}
template<class T>
void accept_any(T)
{}
int main(int argc,char* argv[])
{
typedef pair<int, int> Element;
typedef vector<Element> DataType;
Element e;
DataType *data;
istream_iterator<Element> read(ifstream) ;
accept_any(read);//通过不了
return 0;
}
#include <iostream>
#include <fstream>
#include <vector>
#include <iterator>//注意头文件的包含
using namespace std;
template<typename T1, typename T2>
std::istream& operator>>(std::istream& in, std::pair<T1, T2>& rhs)
{
in>>rhs.first>>rhs.second;
return in;
}
template<class T>
void accept_any(T)
{}
int main(int argc,char* argv[])
{
typedef pair<int, int> Element;
typedef vector<Element> DataType;
Element e;
ifstream read("1.txt");//要初始化
DataType *data;
accept_any(istream_iterator< int >(read) );//Element 这里不对
read >> e;
return 0;
}
#include <iostream>
#include <vector>
#include <fstream>
#include <iterator>
using namespace std;
template<typename T1, typename T2>
std::istream& operator>>(std::istream& in, std::pair<T1, T2>& rhs)
{
in>>rhs.first>>rhs.second;
return in;
}
template<class T>
void accept_any(T)
{}
int main(int argc,char* argv[])
{
typedef pair<int, int> Element;
typedef vector<Element> DataType;
Element e;
ifstream *read;
DataType *data;
accept_any(istream_iterator< int >(*read) );//Element 这里不对
*read >> e; //可以通过
return 0;
}