我有一个C++地图,我希望输入我的类作为值,并输入一个字符串作为键.当我尝试时,我得到一个错误,'Scene_Branding' : illegal use of this type as an expression
我非法使用这种类型作为表达式,我似乎无法找出原因.这是一些代码.
string CurrentScene = "Scene_Branding";
map<string, Scene> Scenes;
Scenes.insert(std::make_pair("Scene_Branding", Scene_Branding)); //<-- Illegal Error parameter 2
Run Code Online (Sandbox Code Playgroud)
这里是场景品牌标题..
#ifndef Scene_Branding_H
#define Scene_Branding_H
#include "Scene.h"
#include <iostream>
#include <string>
class Scene_Branding : Scene
{
public:
Scene_Branding();
~Scene_Branding();
void Draw();
};
#endif
Run Code Online (Sandbox Code Playgroud)
这里是场景标题..
#ifndef Scene_H
#define Scene_H
#include <iostream>
#include <string>
class Scene
{
public:
Scene();
~Scene();
virtual void Draw();
};
#endif
Run Code Online (Sandbox Code Playgroud)
这里有cpp文件.
场景cpp.
#include "Scene.h"
Scene::Scene()
{
}
Scene::~Scene()
{
}
void …Run Code Online (Sandbox Code Playgroud) 在过去,我已经用C++编程语言创建了DirectX应用程序,但是,我想知道是否可以使用C编程语言来实现这一点.
谢谢.