gvsu/cs677/pa4/ElementSet.cc
josh 750c1e2cf3 updated pa4
git-svn-id: svn://anubis/gvsu@299 45c1a28c-8058-47b2-ae61-ca45b979098e
2008-11-30 19:58:06 +00:00

49 lines
1.1 KiB
C++

#include "ElementSet.h"
using namespace std;
ElementSet::ElementSet()
{
}
ElementSet::ElementSet(char initial)
{
mySet.insert(initial);
}
ElementSet ElementSet::Union(const ElementSet & other)
{
ElementSet es;
for (set<char>::iterator it = mySet.begin(); it != mySet.end(); it++)
es.mySet.insert(*it);
for (set<char>::iterator it = other.mySet.begin(); it != other.mySet.end(); it++)
es.mySet.insert(*it);
return es;
}
ElementSet ElementSet::Intersection(const ElementSet & other)
{
ElementSet es;
for (set<char>::iterator it = mySet.begin(); it != mySet.end(); it++)
{
set<char>::iterator find_it = other.mySet.find(*it);
if (find_it != other.mySet.end())
es.mySet.insert(*it);
}
return es;
}
ostream & operator<<(std::ostream & out, const ElementSet & e)
{
int size = e.mySet.size();
if (size > 1)
out << '{';
for (set<char>::iterator it = e.mySet.begin(); it != e.mySet.end(); it++)
{
out << *it;
}
if (size > 1)
out << '}';
return out;
}