【发布时间】:2020-03-15 00:50:39
【问题描述】:
所以我正在尝试使用类来做一个链表。我从未在 C++ 上使用过类。我想要做的只是在头文件上创建一个类 palabra 的对象。
我想访问 .cpp 文件中的 primeaPalabra 以获取以后的方法。我无法创建对象。
我得到的错误是:“primeraPalabra”的多个定义。
我对头文件和 cpp 文件的使用也很陌生。任何提示表示赞赏。
palabra.h 文件
#ifndef PALABRA_H_INCLUDED
#define PALABRA_H_INCLUDED
#include <iostream>
using namespace std;
class Palabra{
private:
int p_id;
string p_nombre;
int p_valor;
Palabra *next;
Palabra *prev;
public:
Palabra(int id, string nombre);
void printNombre();
int calcularValorPalabra();
void agregarSiguiente(Palabra *);
void eliminar();
void buscar();
};
Palabra primeraPalabra(0,"");
Palabra ultimaPalabra(0, "");
Palabra palabraTemp(0, "");
#endif // PALABRA_H_INCLUDED
palabra.cpp 文件
Palabra::Palabra(int id, string nombre)
{
p_id = id;
p_nombre = nombre;
p_valor = calcularValorPalabra();
next = NULL;
prev = NULL;
}
【问题讨论】:
-
您不会在标题中创建对象。应该在需要的地方创建它们,例如 main()?
-
好的,所以我有一个 main()。问题是在我的 .cpp 文件中,我在一个方法中引用了primeraPalabra。我想要的是访问 .cpp 文件上的对象“primeraPalabra”。说,有点像全局变量?有没有更好的方法来做到这一点?
-
最好不要使用全局变量。
标签: c++ class object header-files