C++ 将数组传递给函数

标签 c++ arrays function parameter-passing

我是 C++ 的新手,很难将数组传递给单独的函数。很抱歉重新提出一个问题,这个问题之前无疑已被回答过十几次,但我找不到任何与我的代码问题类似的问题。

int main()
{
    Array<int> intarray(10);
    int grow_size = 0;

    intarray[0] = 42;
    intarray[1] = 12;
    intarray[9] = 88;

    intarray.Resize(intarray.Size()+2);
    intarray.Insert(10, 6);

    addToArray(intarray);

    int i = intarray[0];

    for (i=0;i<intarray.Size();i++) 
    cout<<i<<'\t'<<intarray[i]<<endl;

    Sleep(5000);
}

void addToArray(Array<int> intarray)
{
    int newValue;
    int newIndex;

    cout<<"What do you want to add to the array?"<<endl;
    cin >> newValue;
    cout<<"At what point should this value be added?"<<endl;
    cin >> newIndex;

    intarray.Insert(newValue, newIndex);
}

最佳答案

您传递的是数组的拷贝,因此任何更改都不会影响原始数组。而是通过引用传递:

void addToArray(Array<int> &intarray)
//                         ^

关于C++ 将数组传递给函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17368007/

相关文章:

Python 函数——当我不知道函数需要多少个参数时如何动态调用函数?

c++ - QT 无法正确处理循环中的事件

c++ - 从多个进程和 SQLITE_BUSY 访问 SQLite 数据库

python - 如何绘制 numpy 数组与行数的关系图

Javascript 立即调用函数模式

jquery - 闭包编译器/uglifyjs - this.function 名称没有缩短?

c++ - 指针 - 将 ptr 传递给 ptr 或传递 ptr 的地址

c++ - 引用成员抽象类的Boost序列化

Java Android : BufferedInputStream to byte Array

python - 获取 mongodb 文档中的数组项