エラーC2071:'Lexicon :: list':不正なストレージクラス
一連の文字列をメモリに読み込み、それらの文字列とその関係に操作を適用できる関数を提供するクラスがあります。この一環として、一部の操作が開始されるmain.cppと、操作が完了するクラスの間で共有メモリを使用したいと思います。このため、以前の投稿では、externタイプを使用することが提案されました。しかし、今はエラーがあります。このエラーを解決し、メモリスペースを複数のクラスで共有するにはどうすればよいですか?
lexicon.hで
#ifndef _lexicon_h
#define _lexicon_h
#include <string>
#include <vector>
using namespace std;
class Lexicon {
public:
Lexicon();
~Lexicon();
extern vector<vector<string>> list;
void buildVectorFromFile(string filename, vector<vector<string>> &list, int v, int h);
private:
struct charT { char letter; nodeT *next;};
};
#endif
main.cppで
#include <string>
#include <iostream>
#include <iomanip>
#include <fstream>
#include <vector>
#include "lexicon.h"
void buildVectorFromFileHelper (Lexicon & lex)
{
vector<vector<string>> list;
lex.buildVectorFromFile("ASCII.csv", list, 200, 2); //build 2x200 vector list
}