1

私は C++ を初めて使用し、名前空間を使用していますが、ここで何が間違っているのかわかりません。以下のコードをコンパイルすると、エラーが発生します。

error: 'Menu' has not been declared

これが私のヘッダーファイルMenu.hppです

#ifndef MENU_H //"Header guard"
#define MENU_H

namespace View
{
class Menu
    {
    void startMenu();
    };
}
#endif

そして私のMenu.cpp:

#include "stdio.h"
using namespace std;

namespace View
{
 void Menu::startMenu()
    {
    cout << "This is a menu";
    }
}
4

2 に答える 2

4

クラスを定義するヘッダー ファイルをインクルードしませんでした。

メニュー.cpp:

#include "Menu.hpp"

翻訳単位はコンパイラによって個別にコンパイルされます。ヘッダー ファイルを にインクルードしないMenu.cppと、コンパイラが何が何でMenuあるかを知る方法がありません。

于 2013-08-25T06:06:47.420 に答える