错误:A类使用正在定义的B类 [英] Error : Class A uses Class B, which is being defined

查看:478
本文介绍了错误:A类使用正在定义的B类的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个C ++项目,我已经成功包装与.NET类使用C + + / CLI。我在 .h 文件中定义包装类。

I have a C++ project that I've successfully wrapped with .NET classes using C++/CLI. I'm defining the wrapper classes in a .h file.

我现在得到错误C2460:混音器使用正在定义的音轨

如下面的代码所示,Mixer使用Track var MainTrack 和Track也使用var Parent 中的Mixer。如何使这两个类相互链接并成功编译?

As you can see in the code below, Mixer uses Track in the var MainTrack and Track also uses Mixer in the var Parent. How do I get these 2 classes linked to each other and compile successfully?

#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


推荐答案

只需在顶部声明你的课程:

Just declare your classes at the very top:

public class Mixer;
public class Track;

这篇关于错误:A类使用正在定义的B类的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆