试试:#pragma warning( disable : 4786 )
#include <utility>
#include <list>
#include <fstream>using namespace std;void main()
{
ofstream myfile("c:\\test.txt",ios::in|ios::trunc);
pair<string, int> p[2];
p[0].first ="0";
p[0].second =0;
p[1].first ="1";
p[1].second =1;
list<pair<string,int>*> li;
for(int i=0;i<2;i++)
li.push_back (&p[i]);
copy(li.begin (),li.end (),ostream_iterator<pair<string,int>*>(myfile,"\n"));
}
把编译的结果告诉我,不知道对不对!
#include <utility>
#include <list>
#include <fstream>using namespace std;void main()
{
ofstream myfile("c:\\test.txt",ios::in|ios::trunc);
pair<string, int> p[2];
p[0].first ="0";
p[0].second =0;
p[1].first ="1";
p[1].second =1;
list<pair<string,int>*> li;
for(int i=0;i<2;i++)
li.push_back (&p[i]);
copy(li.begin (),li.end (),ostream_iterator<pair<string,int>*>(myfile,"\n"));
}
把编译的结果告诉我,不知道对不对!
解决方案 »
- 奇怪的打开文档问题:“意外的文件格式”
- 关于数据库查询的操作
- 讨论一下内网和外网的通讯问题,懂这个的大侠来看看
- 哪位高手可否介绍一下远程控制中当我进行键盘、鼠标操作时,远程电脑也跟我做同样的操作的原理?
- 急!急!急!急!急! 为什么我的服务端收不到数据???高手必要指点一下!
- 新建对话框时遇到的问题
- 在console程序中如何使用BYTE类型???
- #include <afxwin.h>后,编译报错的问题
- 怎样释放outlook实例
- MFC编写DLL后的发布环境问题.
- 用CListCtrl导航属性页如何做?
- 谁能说出现在还有什么技术方向是以后将要流行的,比如P2P之类的,并最好阐述原因,有道理即给分
string,我还在研究,大哥要是有空再帮帮忙
不过考虑到你的需求,将代码改为如下!
代码能够工作!不过很没有效率,原因是没遍历一个元素都要打开一次文件!
我试过在函数对象的构造中开文件,虽然执行结果是正确的,不过会导致错误!不明白原因:
下面是代码?有什么问题可以再讨论:#pragma warning( disable : 4786 )
#include <utility>
#include <list>
#include <iostream>
#include <fstream>
#include <algorithm>using namespace std;class CF
{
string filename;
public:
CF(string str):filename(str) {}
~CF() {}
bool operator() ( pair<string,int>*& p)
{
ofstream of;
of.open (filename.c_str(),ios::app );
for(int i=0;i<p-> first .length ();i++)
of.put((char)p->first [i]);
of.put('\t');
of.put((char)(p->second+'0'));
of.put('\n');
of.close ();
return 0;
}
};
void main()
{
pair<string, int> p[2];
p[0].first ="i love you!";
p[0].second =0;
p[1].first ="no!";
p[1].second =1;
list<pair<string,int>* > li;
for(int i=0;i<2;i++)
li.push_back (&p[i]);
for_each(li.begin (),li.end (),CF("c:\\test.txt"));
}
我的email:[email protected]