<分区>
我在一些引用变量方面遇到了麻烦,首先是我的类(class)
头文件
#pragma once
#include "ImageLoader.h"
#include "FontLoader.h"
class LevelState
{
public:
LevelState()
private:
ImageLoader& _imageLoader;
FontLoader& _fontLoader;
}
类文件
#include "LevelState.h"
LevelState::LevelState()
{
}
现在,当我开始构建时,我遇到了这些错误
Error 2 error C2758: 'LevelState::_fontLoader' : a member of reference type must be initialized
Error 1 error C2758: 'LevelState::_imageLoader' : a member of reference type must be initialized
然后我继续更新我的构造函数以像这样接收 ImageLoader 和 FontLoader
LevelState::LevelState(FontLoader& fontLoader, ImageLoader& imageLoader)
{
_fontLoader = fontLoader;
_imageLoader = imageLoader;
}
但是我还是报了和上面一样的错误,请问是哪里出了问题?我知道我可以更改对指针的引用并以这种方式分配它们,但我更愿意使用引用,因为它们更安全。