C ++ - LNK2001错误

时间:2014-12-06 22:03:28

标签: c++

我想尝试使用一个小小的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

错误消息:http://www.bilderhoster.net/safeforbilder/5mdt1tzc.png

1 个答案:

答案 0 :(得分:0)

这是一个直接的错误,错误消息中有很多行李!

您尚未定义名为“textureMap”的静态成员变量。您实际上在链接时获得了未定义的符号错误。

在.cpp文件中,请定义该变量。这应该照顾你的问题。