gpt4 book ai didi

c++ - 我用 istream 得到未初始化的引用成员

转载 作者:行者123 更新时间:2023-11-30 02:41:24 24 4
gpt4 key购买 nike

我的教授给了我以下 .h 文件作为编程作业的一部分来制作词法分析器。

#ifndef LEXER_H
#define LEXER_H

#include "token.h"
#include <istream>

class Lexer {
public:
Lexer(std::istream& input_stream);
Token next_token();
private:
int current_line;
int current_column;
std::istream& input_stream;
};

#endif

我开始制作 .cpp 文件,如下所示:

#include "lexer.h"

Lexer::Lexer(std::istream& inputstream){

}

当我尝试编译时,我收到错误消息:

lexer.cpp: In constructor ‘Lexer::Lexer(std::istream&)’:
lexer.cpp:4: error: uninitialized reference member ‘Lexer::input_stream’

最佳答案

编译器是显式的:引用成员必须在成员初始化列表中初始化:

Lexer::Lexer(std::istream& inputstream) : input_stream(inputstream) {

}

关于c++ - 我用 istream 得到未初始化的引用成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28163303/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com