我想尝试使用一个小小的C ++应用程序,但我总是得到LNK2001错误而且我不知道我做错了什么。
有人可以帮帮我吗?
#ifndef CONTENTMANAGER_H
#define CONTENTMANAGER_H
#include "SFML\Graphics.hpp"
#include <map>
#include <sstream>
using namespace sf;
using namespace std;
static class CONTENTMANAGER
{
public:
static Texture getTexture(string textureName)
{
if(textureMap.find(textureName) == textureMap.end())
{
Texture texture;
stringstream ss;
ss<<"Texture"<<textureName<<".png";
texture.loadFromFile(ss.str());
textureMap.emplace(textureName, texture);
return textureMap[textureName];
}
else
{
return textureMap[textureName];
}
}
private:
static map<string,Texture> textureMap;
};
#endif
答案 0 :(得分:0)
这是一个直接的错误,错误消息中有很多行李!
您尚未定义名为“textureMap”的静态成员变量。您实际上在链接时获得了未定义的符号错误。
在.cpp文件中,请定义该变量。这应该照顾你的问题。