“错误C2660:'storeInitialValues':函数不带1个参数”当我尝试构建时,会出现在我的代码的日志中。我已经看过这里发布的一些过去的错误,我认为可能是某个/所有usersize,v,dsize和/或asize的初始化错误。我只是想看看storeInitialValues(usersize,v,dsize,asize)的特定调用的错误;而已。非常感谢你提前。
#include <iostream>
#include <fstream>
#include <string>
#include <vector>
#include <ctime>
#include <cstdlib>
using namespace std;
struct vec
{
};
struct arr
{
};
void fillArray(int A[], int size);
void storeInitialValues(int * & arr, int & asize, int & dsize, vector<int>& v, int & usersize);
int main()
{
int usersize, dsize, asize;
vector <int> v;
int * ptr = new int[10];
cout << "How many values in data structures? Please enter values greater than 20." << endl;
cin >> usersize;
while (usersize < 21)
{
cout << "Error, enter values greater than 20!" << endl;
cin >> usersize;
}
cout << "Alright, here are your numbers: " << endl;
storeInitialValues(usersize, v, dsize, asize);
}
// fillArray stores sequential, unique, integer values into an array and
// then randomizes their order
void fillArray(int A[], int size)
{
srand((int)time(0));
for (int i = 0; i < size; i++)
{
A[i] = i + 1;
}
for (int k = size - 1; k>1; k--)
{
swap(A[k], A[rand() % k]);
}
}
// storeInitialValues calls fillArray to produce an array of unique randomly
// organized values and then inserts those values into a dynamically sized
// array and a vector.
void storeInitialValues(int * & arr, int & asize, int & dsize, vector<int>& v, int usersize)
{
int * temp = new int[usersize]; // temporary array for randomized data
fillArray(temp, usersize); // get data
for (int i = 0; i < usersize; i++) // copy data into the dynamic data structures
{
add(arr, asize, dsize, temp[i]);
v.push_back(temp[i]);
}
delete[] temp; // clean up temporary pointer
temp = NULL;
}
void add(int & usersize, int & arr, int & dsize, int & temp[i])
{
}
void remove()
{
}
答案 0 :(得分:0)
您对storeInitialValues的调用与声明无关。我想你可能会觉得变量的名称很重要。事实并非如此。您必须以正确的顺序传递与函数声明中的变量类型匹配的变量,名称是无关紧要的。
int *&amp; arr是一个非常奇怪的声明。 int * arr将是一个指向int的指针,您可以将其视为数组。你究竟打算用int *&amp ;?混合*和&amp;要求您对使用非常小心。但是你也在使用vector,这是一种处理数组的非常安全的方法。为什么不使用矢量?您还在main函数中声明和分配ptr,但您不使用它,也不删除它。