我正在使用一个程序,但无法理解在涉及类时处理指针的情况。我知道我必须使用new
为指针分配内存,并且在没有使用类的时候可以使用它。我找不到一个简单的教程来解释如何执行此特定任务。有人能给我一些帮助吗?这是我迄今为止所做的相关片段,但它是输出随机字符:在类构造函数中为指针分配内存
"Hangman.c"
{
class Hangman
{
public:
...
char* remainingLetters();
Hangman()
{
char* remaining=new char[26];
}
~Hangman();
private:
char* remaining;
}
"Hangman.cpp"
{
...
char* Hangman::remainingLetters()
{
...does task to find remaining letters;
return remaining;
}
ostream& operator<< (ostream &out, Hangman &game)
{
out << "Letters remaining are: " << game.remaining <<endl
return out;
}
}
"main.cpp"
{
...
cout << game;
...
}
你不应该真的在C++中使用指针或'new',**尤其是**,如果你是初学者。它们是图书馆开发人员的小众专家主题。 – 2012-04-12 11:43:03
与不使用指针的主题一起,为什么不只是将成员变量声明为数组?即'char remaining [26];'那么你不必担心内存泄漏等问题,就像你忘记释放析构函数中的内存一样。 – 2012-04-12 11:45:00
@JoachimPileborg每次调用函数时都需要返回一个数组,如果我没有记错的话,在C++中无法完成。这就是我试图使用指针的原因。在这种情况下可以得到一个数组输出吗? – adohertyd 2012-04-12 11:46:39