类型__的参数与__类型的参数不兼容

时间:2018-03-28 17:06:34

标签: c++ arrays function c++11 struct

我是一所大学的学生,为一堂课创造一个小型股市模拟器游戏。我们被要求专门使用结构而不是类,我更精通。

我正在尝试设置一个“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 *"

我做错了什么?为什么会出现此错误?为迷你文章道歉。

1 个答案:

答案 0 :(得分:0)

所以我自己回答了这个问题,我想出来了。我没想过将struct对象创建放在头文件中,并将其保留在源文件中。放入头文件而不是修复我遇到的问题。我的错误。