C++ 函数参数报错:表达式必须包含常数 - 动态数组处理方法
这个错误通常是因为在函数参数中使用了不支持动态数组的数据类型,例如数组大小未知。解决方法是使用指针或引用类型作为函数参数,然后在函数内部动态分配内存来存储数组数据。例如:
void Deal_with_P1(vector<unsigned char>* array, Data_Dynamic_Benz m_Dynamic_Benz[]) {
// 使用 array 指针访问数组元素
// 动态分配内存来存储数组数据
// ...
}
或者:
void Deal_with_P1(vector<unsigned char>& array, Data_Dynamic_Benz m_Dynamic_Benz[]) {
// 使用 array 引用访问数组元素
// ...
}
在调用函数时,需要将动态数组的地址或引用传递给函数,例如:
vector<unsigned char> myArray;
Data_Dynamic_Benz myDynamicBenzArray[10];
Deal_with_P1(&myArray, myDynamicBenzArray);
或者:
vector<unsigned char> myArray;
Data_Dynamic_Benz myDynamicBenzArray[10];
Deal_with_P1(myArray, myDynamicBenzArray);
原文地址: https://www.cveoy.top/t/topic/jot7 著作权归作者所有。请勿转载和采集!