我是一所大学的学生,为一堂课创造一个小型股市模拟器游戏。我们被要求专门使用结构而不是类,我更精通。
我正在尝试设置一个“Stock”结构对象数组,并且我试图将Stock对象和Stock对象本身的数组(或者两者都失败)传递给一个函数,每个函数都在一个函数中单独的文件。这是股票结构。
struct Stock {
string FullName;
string Ticker;
string Info;
string Chairman;
double Revenue;
double AvgVol;
double High52;
double Low52;
double CurrentPrice;
Stock() {
FullName = "";
Ticker = "";
Info = "";
Chairman = "";
Revenue = 0;
AvgVol = 0;
High52 = 0;
Low52 = 0;
CurrentPrice = 0;
} };
这是专门用于创建整个游戏中使用的各种结构的专用文件。 这就是我尝试在主驱动函数中创建和调用股票的方式。
Stock Apple;
Stock Chipotle;
Stock Disney;
Stock Tesla;
Stock stockList[4] = { Apple, Chipotle, Disney, Tesla }; //Will access the stocks from this array from here on in
SetupStructs(stockList); //Function that creates the 4 company's information as struct objects to be utilized later
这是第三个文件中的SetupStructs函数,专门用于函数,以免堵塞主文件。
void SetupStructs(Stock stockList[]) {
stockList[0].FullName = "Apple Incorporated";
stockList[1].FullName = "Chipotle Mexican Grill Incorporated";
stockList[2].FullName = "Walt Disney Company";
stockList[3].FullName = "Tesla Motors Incorporated"; };
如果不是很明显,我将其余部分的SetupStructs功能留下了我粘贴的内容,以免不必要的代码堵塞页面。
问题是:“SetupStructs(stockList)”抛出错误:
argument of type "Stock *" is incompatible with parameter of type "Stock *"
我做错了什么?为什么会出现此错误?为迷你文章道歉。
答案 0 :(得分:0)
所以我自己回答了这个问题,我想出来了。我没想过将struct对象创建放在头文件中,并将其保留在源文件中。放入头文件而不是修复我遇到的问题。我的错误。