C++ 两条弦的并集 #包括 #包括 使用名称空间std; 字符串s1=“a、b、c”//设置字符串1 字符串s2=“b,v”//设置字符串2 字符串s3//设置字符串3

C++ 两条弦的并集 #包括 #包括 使用名称空间std; 字符串s1=“a、b、c”//设置字符串1 字符串s2=“b,v”//设置字符串2 字符串s3//设置字符串3,c++,string,C++,String,我尝试使用并集,有人能帮我解决错误吗。函数应该对字符串进行并集,但存在一些问题。谢谢您可以将子对象放入一个std::vector,std::sort()中,如果它们是我的字符串,则std::set_union()它们,然后连接结果。您可以将子对象(例如)放入std::vector,std::sort()如果它们是未排序的字符串,则将它们放入std::set_union()中,然后连接结果。将两个字符串拆分为它们的元素,将元素放入一个std::set将两个字符串拆分为它们的元素,将元素放入一个st

我尝试使用并集,有人能帮我解决错误吗。函数应该对字符串进行并集,但存在一些问题。谢谢

您可以将子对象放入一个
std::vector
std::sort()
中,如果它们是我的字符串,则
std::set_union()
它们,然后连接结果。

您可以将子对象(例如)放入
std::vector
std::sort()
如果它们是未排序的字符串,则将它们放入
std::set_union()
中,然后连接结果。

将两个字符串拆分为它们的元素,将元素放入一个std::set

将两个字符串拆分为它们的元素,将元素放入一个std::set

您能先将它们转换为set吗?您尝试过了吗?显示您的尝试代码。如果您使用C++,可以在STD中尝试字符串类型。namespace@MIKI这似乎没有很好的定义。如果A=“编程”和B=“道具”会怎样。您是否希望联合会是“Propgraming”或“Programingp”或其他什么?“如何解决错误”-什么错误?“但有一些问题”-准确定义问题是什么。这里有很多人试图帮助你,你让他们很难做到这一点。你能先把它们转换成集合吗?你试过了吗?显示您的尝试代码。如果您使用C++,可以在STD中尝试字符串类型。namespace@MIKI这似乎没有很好的定义。如果A=“编程”和B=“道具”会怎样。您是否希望联合会是“Propgraming”或“Programingp”或其他什么?“如何解决错误”-什么错误?“但有一些问题”-准确定义问题是什么。这里有很多人试图帮助你,你让他们很难做到这一点。公共字符串联合(字符串a,字符串B){code}有人帮助编写这个函数的代码,计算两个字符串的并集。莱特这样说:我是一个专业程序员,已经长大了,不需要再做家庭作业了。如果您发布了一些代码,我很乐意评论您的代码可能出错的地方和/或给出如何解决问题的提示。另外,你应该意识到我的解决方案无论如何都不会被家庭作业所接受。+1,我不知道
std::set_union()
是。你每天都会学到一些新的东西。首先要注意的是:不要在评论中重复代码的功能!这将与实际实现不同步。相反,说一个函数在语义上做了什么,可能的话,它是如何做到这一点的。接下来,不要使用全局变量!这样做的理由很少,而且在所有情况下,我知道它们肯定是不变的。在很少的情况下,这样做是正确的。您的第一个循环将每个字符分配给
c
。这有什么帮助<代码>c只能存储一个字符。您的第二个循环想要进入第一个循环:您需要转到第二个循环,尝试查找当前的
c
,如果根本找不到,则追加
c
(即,如果在字符串
s3
中没有找到
c
,则需要添加
c
。但是,您也不希望对字符进行操作,而希望对“单词”进行操作:您需要找到下一个逗号并提取当前位置和下一位置之间的单词。公共字符串联合(字符串A,字符串B){code}有人帮我写这个函数的代码,这个函数计算两个字符串的并集。Let’s这么说:我是一个专业的程序员,已经不需要做家庭作业了。如果你发帖子,我很乐意评论你的代码在哪里有些可能会出错和/或给出解决问题的提示。此外,你应该意识到我的解决方案无论如何都不会被家庭作业接受。+1,我不知道
std::set_union()
was。您每天都会学到一些新的东西。首先要注意的是:不要在注释中重复代码的功能!这将与实际实现不同步。相反,请说明函数在语义上做了什么,可能的话,它是如何做的。接下来,不要使用全局变量!这样做的原因很少,而且在所有情况下我都知道它们中的一个肯定是恒定的。在很少的情况下,这样做是正确的。您的第一个循环将每个字符分配给
c
。这有什么帮助?
c
只能存储一个字符。您的第二个循环希望位于第一个循环中:您需要转到第二个循环,试图找到当前的
c
和append
c
如果根本找不到它(即,如果在字符串
s3
中没有找到
c
的内部循环完成,则需要添加
c
。但是,您也不希望对字符进行操作,而是对“字”进行操作:您需要找到下一个逗号并提取当前位置和下一位置之间的单词。
#include <string>
#include <iostream>
using namespace std;



string s1="a,b,c"; //Set up string 1
string s2="b,v"; //Set up string 2
string s3; //Setup string 3