我对编程非常陌生,正在使用 C++。
在我的头文件:Globals.h 中,我声明了我的枚举“Colour”和一个用于测试它的函数。
在我的源文件 Globals.cpp 中,我定义了枚举和测试函数。
在 main 中,我调用该函数,但收到以下消息:
错误 C2027:使用未定义的类型“颜色”
和
错误 C2065:“COLOUR_BLACK”:未声明的标识符。
我的代码如下:
Globals.h
#ifndef GlOBALS_H
#define GLOBALS_H
enum class Colour;
void print_Colour(Colour whatColour);
#endif
Run Code Online (Sandbox Code Playgroud)
和:
Globals.cpp
#include <iostream>
#include "Globals.h"
enum class Colour
{
COLOUR_BLACK,
COLOUR_BROWN,
COLOUR_BLUE,
COLOUR_GREEN,
COLOUR_RED,
COLOUR_YELLOW
};
void print_Colour(Colour whatColour)
{
switch (whatColour)
{
case Colour::COLOUR_BLACK:
std::cout << "Black" << "\n";
break;
case Colour::COLOUR_BROWN:
std::cout << "Brown" << "\n";
break;
case Colour::COLOUR_BLUE:
std::cout << "Blue" << "\n";
break;
case Colour::COLOUR_GREEN:
std::cout << "Green" << "\n";
break;
case Colour::COLOUR_RED:
std::cout << "Red" << "\n";
break;
case Colour::COLOUR_YELLOW:
std::cout << "Yellow" << "\n";
break;
default:
std::cout << "Who knows!" << "\n";
}
}
Run Code Online (Sandbox Code Playgroud)
和:
Source.cpp
#include <iostream>
#include "Globals.h"
using namespace std;
int main()
{
Colour paint = Colour::COLOUR_BLACK;
print_Colour(paint);
std::cin.get();
std::cin.get();
return 0;
};
Run Code Online (Sandbox Code Playgroud)
任何帮助将不胜感激!