c++ - C++中引用的无效初始化

标签 c++ function data-structures compiler-errors

因此,我尝试进行编译,以便我可以运行第一个函数以查看其是否正常运行,但仍会出现这些错误。请帮忙!我得到了错误:

“从类型'char'的表达式对类型'Division&'的引用的无效初始化”

我还会收到“在传递参数'void Create_Corporate_File(Division&,Division&,Division&,Division&)'时的参数1”

#include <iostream>
#include <fstream>
#include <cstdlib>
using namespace std;

const int SIZE = 12;


struct Division
{
char divName [SIZE];
double sales [4];
};

int main()
{
char Div_E; 
char Div_W; 
char Div_N; 
char Div_S;

void Describe_Program ();
void Create_Corporate_File (Division& Div_E, Division& Div_W, Division& Div_N, Division& Div_S);
//void Display_Corporate_Sales (Div_E, Div_W, Div_N, Div_S);


Describe_Program(); 
Create_Corporate_File (Div_E, Div_W, Div_N, Div_S);


system ("PAUSE");
return 0; 
}


void Describe_Program()
{ 
cout << "This program will prompt you to enter the sales amount\n";
     << "for each quarter of the North, South, West and East Division.\n";
     << "After you enter the sales amount for each quarter, the program\n";
     << "will be able to calculate the total quarterly sales for that";
     << "division"; 
     <<endl<endl; 
     return; 
} 

void Create_Corporate_File (Division& Div_E, Division& Div_W, Division& Div_N, Division& Div_S)
{
 fstream quarterly_sales; 
 quarterly_sales.open ("quarterly_sales.dat" ios::out|ios::binary)

     For(div = 0, div < 4, div++)
     {
           Division temp;

     if (div == 0)
                  temp = Div_E;
     else 
          if (div == 1)
                  temp = Div_W;
          else 
               if (div == 2)
                  temp = Div_N;
               else 
                  temp = Div_S;

                   cout << "Please enter the division: "; 
                    cin.getline (temp.divName, SIZE); 

      For(sales = 0, sales < 4, sales++)
      {         
cout << "Please enter the sales amount for quarter " << sales + 1 <<":\n";
cin >> temp.sales [sales]; 
    }
}

最佳答案

Div_E等的类型为char,而Create_Corporate_File()函数将类型为Division&作为参数-将类型更改为该类型。

关于c++ - C++中引用的无效初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26663129/

相关文章:

c++ - 为什么 Go 套接字比 C++ 套接字慢?

c++ - 如何使用 setfill 和 setw 在字符串变量中存储十六进制值

c - 函数未正确返回 char : error during compile

c - C99 标准中的默认参数提升

c++ - Unique_ptr 容器或 unique_ptr 元素

javascript - 这是一个javascript闭包吗?

algorithm - 为什么通过插入构建二叉堆的时间复杂度不是O(n)?

java - 在Java中插入排序的链表

database - AVL 树与平衡树

c++ - "(void)!ptr"是做什么的?