我想知道如何动态地将数据插入到集合中。我有一个带有不同点的文本文件,我需要动态插入到集合中,因为我不知道那里会有多少项目。
样本.txt
Point [3 4]
Point [5 6]
主文件
set<Point> s_p2;
if (strData.find("Point") != string::npos) {
pos = strData.find("t");
strData = strData.substr(pos + 2, 4);
istringstream in(strData);
Point temp_p;
in >> temp_p;
s_p2.insert(temp_p);
}
s_p2
是集合容器,下面的代码集循环到文件末尾。
Q1:如果我这样做,我的套装只有一件还是多件temp_p
?
Q2:如何打印出集合中的值?
.
ostream& operator<<(ostream &out, Point &p2) {
p2.setDistFrOrigin();
out << "[" << setw(4) << p2.getX() << setw(1) << "," << setw(4) << p2.getY() << "] " << setprecision(3) << p2.getScalarValue() << endl;
}