F
Furtano
Gast
Hallo,
ich schreibe grad an einer XML Klasse (XML.h).
Diese möchte ich in einer .Net-Framework Forms Anwendung (Form1.h) nutzen.
Leider bekomme ich immer den Fehler :
Fehler 2 error C3767: "XML::loadNode": Auf mögliche Funktion(en) kann nicht zugegriffen werden. c:\users\chris\documents\visual studio 2010\projects\duckxml2\duckxml2\Form1.h 74
Wie kann ich den Fehler beheben?
Danke schon mal
Form1.h
XML.h
XML.cpp
Ok hab durchs erklären den Fehler gefunden, Funktion war nicht public.
Weitere Frage: Warum werden meine "cout" Meldungen nicht angezeigt?
ich schreibe grad an einer XML Klasse (XML.h).
Diese möchte ich in einer .Net-Framework Forms Anwendung (Form1.h) nutzen.
Leider bekomme ich immer den Fehler :
Fehler 2 error C3767: "XML::loadNode": Auf mögliche Funktion(en) kann nicht zugegriffen werden. c:\users\chris\documents\visual studio 2010\projects\duckxml2\duckxml2\Form1.h 74
Wie kann ich den Fehler beheben?
Danke schon mal
Form1.h
PHP:
#pragma once
#include "XML.h"
namespace duckXML2 {
using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Drawing;
/// <summary>
/// Zusammenfassung für Form1
/// </summary>
public ref class Form1 : public System::Windows::Forms::Form
{
public:
XML bla;
Form1(void)
{
InitializeComponent();
//
//TODO: Konstruktorcode hier hinzufügen.
//
}
protected:
/// <summary>
/// Verwendete Ressourcen bereinigen.
/// </summary>
~Form1()
{
if (components)
{
delete components;
}
}
private:
/// <summary>
/// Erforderliche Designervariable.
/// </summary>
System::ComponentModel::Container ^components;
#pragma region Windows Form Designer generated code
/// <summary>
/// Erforderliche Methode für die Designerunterstützung.
/// Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden.
/// </summary>
void InitializeComponent(void)
{
this->SuspendLayout();
//
// Form1
//
this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
this->ClientSize = System::Drawing::Size(284, 261);
this->Name = L"Form1";
this->Text = L"Form1";
this->Load += gcnew System::EventHandler(this, &Form1::Form1_Load);
this->ResumeLayout(false);
}
#pragma endregion
private: System::Void Form1_Load(System::Object^ sender, System::EventArgs^ e) {
bla.loadNode();
}
};
}
XML.h
PHP:
#ifndef XML_H
#define XML_H
#include "stdafx.h"
#include <stdio.h>
#using <System.Xml.dll>
#using <mscorlib.dll>
using namespace std;
using namespace System::Xml;
using namespace System::Xml::Schema;
ref class XML {
private:
int loadNode();
};
#endif
XML.cpp
PHP:
#include "stdafx.h"
#include <stdio.h>
#include <iostream>
#include "tinyxml2\tinyxml2.h"
#include "XML.h"
using namespace tinyxml2;
using namespace std;
int XML::loadNode(){
XMLDocument doc;
doc.LoadFile("XMLFile1.xml");
XMLElement* root = doc.FirstChildElement();
cout << "BLUBBB";
cout << "BLAAAAAAAAAA: " << root->ToText();
return 0;
}
Ergänzung ()
Ok hab durchs erklären den Fehler gefunden, Funktion war nicht public.
Weitere Frage: Warum werden meine "cout" Meldungen nicht angezeigt?