c++中创建长度为n的顺序表
时间: 2024-11-03 08:14:53 浏览: 13
在 C++ 中,你可以使用数组来创建一个固定长度的顺序表,特别是当长度已知且不需要动态调整时。下面是一个简单的例子,展示如何创建一个长度为 n 的顺序表(数组):
```cpp
#include <iostream>
// 定义一个模板类 SequenceList,用于存储不同类型的数据
template <typename T>
class SequenceList {
public:
// 初始化列表,长度为 n
SequenceList(int n) : list(n), size(0) {
for (int i = 0; i < n; ++i)
list[i] = T(); // 默认值或空值,根据需要填充
}
// 添加元素到列表末尾,这里假设列表已经足够大
void add(const T& value) {
if (size == list.size()) {
resize(list.size() * 2); // 当满时,双倍扩容
}
list[size++] = value;
}
// 访问元素
const T& get(int index) const {
if (index < 0 || index >= size) {
throw std::out_of_range("Index out of range");
}
return list[index];
}
private:
// 序列存储数据
T list[100]; // 可以根据实际情况调整数组大小
int size;
// 动态扩容函数,实际项目中可能会有更复杂的管理策略
void resize(int newSize) {
T* newList = new T[newSize];
for (int i = 0; i < size; ++i)
newList[i] = list[i];
delete[] list;
list = newList;
}
};
int main() {
SequenceList<int> integerList(5);
for (int i = 0; i < 5; ++i) {
integerList.add(i);
}
for (int i = 0; i < integerList.size(); ++i) {
std::cout << "Element at index " << i << ": " << integerList.get(i) << std::endl;
}
return 0;
}
```
阅读全文