2

C ++/CLIを使用して.NETクラスで正常にラップしたC++プロジェクトがあります。ファイルでラッパークラスを定義してい.hます。

私は現在取得していError C2460: Mixer uses Track, which is being definedます。

以下のコードでわかるように、MixerはvarMainTrackでTrackを使用し、Trackもvarで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
4

1 に答える 1

3

一番上でクラスを宣言するだけです。

public class Mixer;
public class Track;
于 2013-03-25T09:35:02.753 に答える