C++ 如何在文件中添加堆栈中的元素而不在文件中重复它们
我有一节水课。在用户输入的帮助下,它形成了不同的元素,如蒸汽、雨水等。当它们形成时,它们被写入文件中 但我希望一个元素只写一次,也就是说,如果蒸汽再次形成,那么一旦蒸汽被添加,就不应该再添加。可能吗C++ 如何在文件中添加堆栈中的元素而不在文件中重复它们,c++,file,sequential,C++,File,Sequential,我有一节水课。在用户输入的帮助下,它形成了不同的元素,如蒸汽、雨水等。当它们形成时,它们被写入文件中 但我希望一个元素只写一次,也就是说,如果蒸汽再次形成,那么一旦蒸汽被添加,就不应该再添加。可能吗 bool PushandWrite (Water newElement) { ifstream in ("F:\\Songs\Water.txt", ios::out|ios::app); if(i>=5) { c
bool PushandWrite (Water newElement)
{
ifstream in ("F:\\Songs\Water.txt", ios::out|ios::app);
if(i>=5)
{
cout<<"Element cannot be formed"<<endl;
return false;
}
else
{
/Elements[i] = newElement.water;
in>>newElement.Elements[i];
//Elements[i] = newElement.water;
for(int i=0; i<5; i++)
{
for (int j=i+1; j<5; j++)
{
if (Elements[i] == Elements [j])
{
return false;
}
else
return true;
}
}
}
}
void write2file (Water newElement)
{
ofstream out ("F:\\Songs\Water.txt", ios::out|ios::app);
{
if (PushandWrite (newElement))
{
out << newElement.water<<endl;
}
}
}
只需使用if条件检查输入是否已经可用,然后断开并不要打印/写入文件。你能指导我如何在这里粘贴代码吗。我是新来的,所以我不知道该怎么说。我这样做了,但它不起作用。每个元素在每次形成时都会被添加。只需在问题中复制并粘贴代码,然后选择“代码”,然后按ctrl+K键而不使用语言标记,这个问题很难回答。在任何情况下,似乎有人试图通过电子邮件进行协作,我怀疑现在已经放弃了——投票关闭。唯一元素的合适容器不是堆栈,而是集合。C++有一个集合类型,检查出来。