我正在编写一个选择排序程序。我刚刚发布了一些关于 std::vector 的内容,但是这篇文章是关于不同主题的。
我能够编译该程序,但是在 main 方法中调用 insert() 时它遇到了运行时错误。
我的 ArrayS 具有以下代码作为复制构造函数,并且在创建 ArrayS 时还将 nElems 初始化为 0。
[ArrayS.cpp]
ArrayS::ArrayS(int max)
{
std::vector<long> a;
nElems = 0;
}
void ArrayS::insert(long value) // put element into array
{
a[nElems] = value; // insert it
nElems++; // increment size
}
[阵列S.h]
private:
std::vector<long> a;
int nElems;
现在,我是否需要 ArrayS.cpp 中的 get/set 方法来操作 nElems?我不确定在 C++ 中如何使用私有变量。
谢谢你。