1. ホーム
  2. c++

[解決済み] error C2143: syntax error : missing ';' before 'using' [closed].

2022-02-06 02:13:59

質問内容

これが私のヘッダーです。

#ifndef HEADER_H
#define HEADER_H

class Math
{
    private:
        static enum names {amin = 27 , ali = 46};

    public:
        static void displayMessage();

}


#endif // HEADER_H

で、これがヘッダーの定義です。

#include <iostream>
#include <iomanip>
#include "Header.h"

using namespace std;

void Math::displayMessage()
{
    cout<<amin<<setw(5)<<ali<<endl;
}

で、これがメインです。

#include <iostream>
#include "Header.h"

using namespace std;

enum Math::names;

int main()
{
    Math::displayMessage();
}

このようなエラーが発生しました。

error C2143: syntax error : missing ';' before 'using'  
error C2143: syntax error : missing ';' before 'using'  

はメイン、もう1つはヘッダー定義です。 プログラミングの中で何度か遭遇したことがあります。 このような場合、それを説明してもらえますか?

よろしくお願いします

よろしくお願いします

Amin khormaei

解決方法は?

前処理を行った後、ソースコード [1] のヘッダー定義は、次のようになります。

// iostream contents

// iomanip contents


class Math
{
    private:
        static enum names {amin = 27 , ali = 46};

    public:
        static void displayMessage();

}

using namespace std;

void Math::displayMessage()
{
    cout<<amin<<setw(5)<<ali<<endl;
}

では、次に error C2143: syntax error : missing ';' before 'using' . はどこですか? using を上記のコードに追加してください。 の前にあるのは何ですか? using ?

}
^ This    

using namespace std;

というエラーの部分があるため missing ';' を追加する必要があります。 ; .

};
 ^


[1] <サブ 正確には、翻訳ユニットと呼ばれる。