Warum verhalten sich Const Yaml :: Knotenobjekte nicht wie wertähnliche Objekte mit YAML-CPP?C++

Programme in C++. Entwicklerforum
Anonymous
 Warum verhalten sich Const Yaml :: Knotenobjekte nicht wie wertähnliche Objekte mit YAML-CPP?

Post by Anonymous »

Ich versuche eine Yamlconfig-Klasse mit Yaml-CPP zu machen. Eines seiner Hauptmerkmale ist, dass ihre Benutzer im Stil von Bukkit, einer Minecaft -API, unterschiedliche Knoten in einem Baum von Karten (z. B. eine Karte, die Karten enthält, die Karten enthält, aber auf variierende Tiefen) über eine Zeichenfolge wie "MAP1.MAP2.MAP3.MAP3.MAP3.KEALUE" enthält. Ich habe die Suchfunktion im folgenden minimalen Beispiel geschrieben, aber obwohl sie konstant gekennzeichnet ist, ist die Zeichenfolge, die jedes Mal aufgerufen wird, anders und scheint nur die Karte zu sein, die den Endwert für den vorherigen Aufruf enthält. Dies zeigt ein Problem, dass sich M_ROOTNODE zu ändern scheint. Was ist los? Das stimmt jedoch nicht mit der Funktion der Funktion konstant. Als solches habe ich jetzt keine Ahnung, was los ist. Ich habe versucht, auch über meine Suchmaschine ähnliche Probleme zu finden, aber nichts, was auftauchte

Code: Select all

#include 
#include 
#include 
#include 
#include 

class YamlConfig{
public:
YamlConfig(const std::string &yaml);
YAML::Node seek(std::string_view key, bool create) const;
private:
YAML::Node m_rootNode;

static std::vector split(std::string_view input, char delimeter);
};

YamlConfig::YamlConfig(const std::string &yaml){
m_rootNode = YAML::Load(yaml);
}

YAML::Node YamlConfig::seek(std::string_view key, bool create) const {
auto splitKey = split(key, '.');
YAML::Node current = m_rootNode;

YAML::Emitter emitter;
emitter

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post