我在使用结构传递文件对象时遇到一个问题,代码是
#include <iostream>
#include<fstream>
using namespace std;
typedef struct abc
{
ofstream &t;
}stabc;
class dc
{
public:
static void fun(stabc *ad);
static stabc ab;
};
int main()
{
ofstream str;
str.open("hello.csv",ios::app);
str<<"hellllooo"<<endl;
dc d;
d.ab.t=str;
dc::fun(&d.ab);
cout << "Hello world!" << endl;
return 0;
}
void dc::fun(stabc *ad)
{
ofstream& st=ad->t;
st<<"kikiki"<<endl;
}
它给出未初始化的引用成员 abc::t。请告诉我我错在哪里?