下一个代码有问题,出现以下错误
Stack.h:13:3:错误:“单元格”未命名类型
我不知道如何解决该问题,感谢您的帮助。
// in a stack, we are in interested in its top value only. The default constructor initializes the stack to
// be empty
class Stack {
public:
Stack();
void push(int value); // push adds a value at the top of the stack
int top(); // returns the top value
void pop(); // removes the top value
int size() const; // size returns the number of values in the stack
bool empty() const; // returns true if the stack is empty
int getNext() const;
private:
Cell *m_firstCellPtr; // m_firstCellPtr field is a pointer to the first cell of the linked list holding the values of the stack
int m_size; // fields holds the current size of the stack
};
我从书中得到的每个例子C ++ 17 By StefanBjörnander 2018年2月
答案 0 :(得分:3)
第Cell *m_firstCellPtr;
行指的是类型Cell
,这在那时显然是未知的。
这很有可能是因为该书仅在此页面上显示Stack
部分,而没有提及您必须声明Cell
,例如通过添加类似#include "Cell.h"
摆脱这种情况的三种方法:
#include "Cell.h"
(如果该书的资源提供了该书Cell
之前将class Cell;
声明为Stack
; class Cell *m_firstCellPtr;