でmy_project.h
:
#pragma once
#include <vcclr.h>
#include "MyManagedClass.h"
namespace my_namespace
{
MyManagedClass^ DoSomething(const Foo* foo);
}
次のエラーが発生しました:
1) error C2143: syntax error : missing ';' before '^'
2) error C4430: missing type specifier - int assumed.
Note: C++ does not support default-int
プロジェクトはとして作成されましたc++/cli
。
で"MyManagedClass.h"
:
public ref class MyManagedClass
{
public:
System::UInt32 GetMember()
{
return m_member;
}
private:
System::UInt32 m_member;
};
他のファイルではすべてが機能しますが、ここでは、私が間違ったことは何ですか?
ETA:
私はこのように関数を変更しました:
namespace my_namespace
{
MyManagedClass^ DoSomething(const System::String^ str);
}
そして、それは問題を解決しませんでしたが、何らかの理由でリターンタイプをに変更するvoid
と、すべてが正常に機能します