C ++ "Schwerwiegender Fehler LNK1120" ungelöste statische Klassenmitglieder

Ich erhalte die folgende Fehlermeldung (jemand kann die unnötigen Bits gerne bearbeiten):

1> FIXDecoder.obj: Fehler LNK2001: nicht aufgelöstes externes Symbol "privat: statische Klasse std :: unordered_map, Klasse std :: allokator>, Klasse std :: basic_string, Klasse std :: allokator>, Struktur std :: hash, Klasse std :: allokator>>, struct std :: equal_to, class std :: allokator>>, class std :: allokator, class std :: allokator> const, class std :: basic_string, class std :: allokator>>>> FD :: FixValueMappingsDict "(? FixValueMappingsDict @ FD @@ 0V? $ Unordered_map @ V? $ Basic_string @ DU? $ Char_traits @ D @ std @@ V? $ Allokator @ D @ 2 @@ std @@ V12 @ U? $ Hash @V? $ Basic_string @ DU? $ Char_traits @ D @ std @@ V? $ Allocator @ D @ 2 @@ std @@@ 2 @ U? $ Equal_to @ V? $ Basic_string @ DU? $ Char_traits @ D @ std @@ V? $ Allokator @ D @ 2 @@ std @@@ 2 @ V? $ Allokator @ U? $ Pair @ $ CBV? $ Basic_string @ DU? $ Char_traits @ D @ std @@ V? $ Allokator @ D @ 2 @@ std @@ V12 @@ std @@@ 2 @@ std @@ A)

1> FD.obj: Fehler LNK2001: nicht aufgelöstes externes Symbol "privat: statische Klasse std :: unordered_map, Klasse std :: allokator>, Klasse std :: basic_string, Klasse std :: allokator>, Struktur std :: hash, Klasse std :: allokator>>, struct std :: equal_to, class std :: allokator>>, class std :: allokator, class std :: allokator> const, class std :: basic_string, class std :: allokator>>>> FD :: FIXFieldNoDict "(? FIXFieldNoDict @ FD @@ 0V? $ Unordered_map @ V? $ Basic_string @ DU? $ Char_traits @ D @ std @@ V? $ Allokator @ D @ 2 @@ std @@ V12 @ U? $ Hash @V? $ Basic_string @ DU? $ Char_traits @ D @ std @@ V? $ Allocator @ D @ 2 @@ std @@@ 2 @ U? $ Equal_to @ V? $ Basic_string @ DU? $ Char_traits @ D @ std @@ V? $ Allokator @ D @ 2 @@ std @@@ 2 @ V? $ Allokator @ U? $ Pair @ $ CBV? $ Basic_string @ DU? $ Char_traits @ D @ std @@ V? $ Allokator @ D @ 2 @@ std @@ V12 @@ std @@@ 2 @@ std @@ A)

1> C: \ Visual Studio 2012 \ Projects \ FD \ x64 \ Debug \ FD.exe: Schwerwiegender Fehler LNK1120: 2 nicht aufgelöste externe Probleme

für diesen Code:

//FH.h
#ifndef FD_H
#define FD_H

#include "FM.h"
#include <unordered_map>
#include <string>

class FD{
public:
    FD();
    FD(FM message);
    ~FD();
    FD(const FD& tocopy);
    FD& operator=(const FD& toassign);

private:
    static unordered_map<string,string> FIXFieldNoDict;
    static unordered_map<string,string> FixValueMappingsDict;
};

#endif

//FD.cpp
#include "FD.h"
#include "Mappings.h"
#include "Utils.h"
#include <vector>
#include <string>
#include <iostream>
#include <unordered_map>

using namespace std;

FD::FD(){
    FIXFieldNoDict = Mappings::createFIXFieldNoDict();
    FixValueMappingsDict = Mappings::getFIXValuesDict();
}

Mappings.h enthält nur einige Funktionen, die eine unordered_map erzeugen

#ifndef MAPPINGS_H
#define MAPPINGS_H

#include <unordered_map>
#include <string>

using namespace std;

class Mappings{

public:
    Mappings();

    static unordered_map<string,string> createFIXFieldNoDict();

    static unordered_map<string,string> getFIXValuesDict();
.
.
};

Antworten auf die Frage(2)

Ihre Antwort auf die Frage