我不应该在“main.cpp”的第 8 行收到错误吗?
- 我没有使用析构函数。
- 我认为这与“const”关键字有关。
主.cpp:
#include "stack.hpp"
int main() {
node* firstnode = new node(NULL, 5);
std::cout << firstnode -> getvariable() << std::endl;
node* secondnode = new node(NULL, 10);
std::cout << secondnode -> getvariable() << std::endl;
delete firstnode;
std::cout << firstnode -> getvariable() << std::endl;
return 0;
}
堆栈.hpp:
#ifndef stack_hpp
#define stack_hpp
#include <iostream>
class node {
public:
node(node* nextnode, int variablevalue);
void setvariable(const int variablevalue);
const int getvariable() const;
private:
node* nextnodelink;
int variable;
};
#endif
堆栈.cpp:
#include "stack.hpp"
node::node(node* nextnode, int variablevalue)
: nextnodelink(nextnode), variable(variablevalue) {
}
const int node::getvariable() const {
return variable;
}