函数模板设计并实现一个通用集合类
时间: 2024-05-01 21:23:11 浏览: 49
(类)设计并实现一个具有并,交差等功能的集合类.zip_集合类
好的,我可以为您提供一个简单的通用集合类的函数模板示例,如下所示:
```c++
#include <iostream>
#include <vector>
template <typename T>
class Collection {
public:
Collection() {}
~Collection() {}
void add(T value) {
values.push_back(value);
}
void remove(T value) {
for (auto it = values.begin(); it != values.end(); ++it) {
if (*it == value) {
values.erase(it);
break;
}
}
}
void clear() {
values.clear();
}
bool contains(T value) const {
for (const auto& v : values) {
if (v == value) {
return true;
}
}
return false;
}
size_t size() const {
return values.size();
}
void print() const {
for (const auto& v : values) {
std::cout << v << " ";
}
std::cout << std::endl;
}
private:
std::vector<T> values;
};
int main() {
Collection<int> c;
c.add(1);
c.add(2);
c.add(3);
c.print();
std::cout << "Size: " << c.size() << std::endl;
std::cout << "Contains 2: " << c.contains(2) << std::endl;
c.remove(2);
std::cout << "After removing 2: ";
c.print();
c.clear();
std::cout << "After clearing: ";
c.print();
return 0;
}
```
这个通用集合类使用了一个 vector 来存储元素,并提供了 add、remove、clear、contains、size 和 print 等操作。您可以根据需要修改或扩展此函数模板以满足您的特定需求。
阅读全文