Wie zu initialisieren static const set<string> in der Implementierungsdatei?

Meine Initialisierung eines static const set<string> scheint falsch zu sein, würde ich schätzen, Ihre Richtlinien auf dieser:

obj.h:

class obj
{
  ...

private:
  static const set<string> keywords;
  ...

}

obj.cpp:

const string kw[] = {"GTR","LTR","LEQ","GEQ","NEQ","SQRT","sqrt"};
const set<string> obj::keywords = (kw,kw + sizeof(kw)/sizeof(kw[0]));

Aber dies ergibt den Fehler:
error: conversion from ‘const string* {aka const std::basic_string<char>*}’ to non-scalar type ‘const std::set<std::basic_string<char> >’ requested

Kann jemand mir sagen, die richtige Art und Weise zu initialisieren, dieser Satz?

InformationsquelleAutor Prem | 2013-05-03

Schreibe einen Kommentar