У меня есть проект C++, который я успешно обернул классами .NET с помощью C++/CLI. Я определяю классы-оболочки в файле .h.
В настоящее время я получаю Error C2460: Mixer uses Track, which is being defined.
Как видно из приведенного ниже кода, Mixer использует Track в переменной MainTrack, а Track также использует Mixer в переменной Parent. Как мне связать эти 2 класса друг с другом и успешно скомпилировать?
#ifndef CPP_MIXER_NET_H
#define CPP_MIXER_NET_H
#pragma managed
// Mixer class
public ref class Mixer {
private:
void Create();
void Destroy();
public:
// props
Track MainTrack;
Mixer();
~Mixer();
!Mixer();
};
// Track class
public ref class Track {
private:
void Create(Track^ parent);
void Destroy();
public:
// props
Mixer Parent;
Track Parent;
// public constructor
Track(Track^ parent);
~Track();
!Track();
};
#endif