Signatur von öffentlichen member enthält native Art

Ich bin neu in visual c++, ich habe den folgenden code:

ref class Book sealed
{
public:
    Book(std::string title,std::string author,int year);
    void setTitle(std::string title);
    std::string getTitle() const;
    int getYear() const;
    void setYear(int year);
    void setAuthor(std::string author_);
    std::string getAuthor() const;

private:
    std::string title_;
    std::string author_;
    int year_;

};

Wenn ich versuche zu kompilieren bekomme ich den folgenden Fehler:

{ctor} signature of public member contains native type. Ich vermute, das ist weil ich verwende einen std::string und nicht die Platform::String, wie kann ich das beheben?

  • Das sieht nicht aus wie C++. Ich glaube, Sie brauchen eine andere Sprache-tag.
  • Das ist managed C++, nicht C++
  • sorry, mein Fehler.
  • Es ist C++/CLI, Microsofts Adaption von C++ für das .NET-Plattform. Es ist nicht standard-C++.
  • Nein, es dies zulässt. Das ist C++/CX, eine Sprache, die Erweiterung, die es erlaubt Sprachen wie VB.NET und Javascript, um den direkten Aufruf von C++ - code. Was natürlich nicht funktionieren kann mit std::string, Javascript kennt Bohnen über, die C++ - Klasse.
Schreibe einen Kommentar