无法声明对象

cac*_*bin 2 c++

我在这一行收到错误:

Attack a("Nothing", 60, Magic);
Run Code Online (Sandbox Code Playgroud)

这是错误:

..\main.cpp:11: error: expected `;' before "a"
..\main.cpp:11: warning: statement has no effect
Run Code Online (Sandbox Code Playgroud)

以下是相关文件:main.cpp:

#include "Attack.h"

int main() {
    Attack a("Nothing", 60, Magic);

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

Attack.h:

#ifndef ATTACK_H_
#define ATTACK_H_

#include <string>
#include <stdlib.h>
#include <time.h>

enum ATTACK_ATTRIBUTE {
    Attack, Speed, Magic
};

class Attack {
private:
    std::string name;
    int power; //Out of 10
    ATTACK_ATTRIBUTE attribute;

public:
    Attack(std::string name, int power, ATTACK_ATTRIBUTE attribute);
    virtual ~Attack();

    std::string getName();

    ATTACK_ATTRIBUTE getAttribute();

    int getPower();
};

#endif /* ATTACK_H_ */
Run Code Online (Sandbox Code Playgroud)

Gia*_*ian 5

你有一个叫做"攻击"的类和一个枚举器.尝试将其中一个名称更改为其他名称.

  • 是的,通常**枚举**是用CAPS LOCK定义的,以避免这种事情! (2认同)