Определение неявно объявленного деструктора

В моем заголовочном файле для моего класса двоичного дерева HuffmanTree у меня есть объявление моего деструктора:

//huffman.h
using namespace std;

#ifndef HuffmanTree_H
#define HuffmanTree_H
class HuffmanTree
{
        public:
        ~HuffmanTree();
};
#endif

и в моем файле cpp у меня есть реализация моего деструктора

//huffman.cpp

#include "huffman.h"

using namespace std;

//destructor
HuffmanTree::~HuffmanTree()
{

}

примечание: я не закончил писать тело деструктора, потому что я хочу, чтобы оно компилировалось

точный текст ошибки:

huffman.cpp:8:27: error: definition of implicitly-declared ‘HuffmanTree::~HuffmanTree()’
    HuffmanTree::~HuffmanTree()
                              ^

спасибо за любую помощь, которую вы можете оказать

0 ответов

В заголовок добавьте это:

class HuffmanTree {

public:
      ~HuffmanTree(void);

В вашем файле.cpp:

HuffmanTree::~HuffmanTree(void) {
   ;
}

Добавление "void" сработало для меня.

Другие вопросы по тегам