-3

在此处输入图像描述

我是 C# 的新手。我想使用包含实例作为参数的方法。

Class c = new Class();
object.method(c);

完整代码在这里:

public partial class MainWindow : Window
{
    ControllerDevice c; // interface
    Judge j;
    FallingRect f;

    public MainWindow()
    {
        c = new Kinect(this); // class implement interface 
        j = new Judge();
        InitializeComponent();
        c.start();
        f = new FallingRect(this, -200);

        /*
         * Question code
         */
        j.doJudge(c.getLeftTop, c.getRightTop, f);
    }
}

interface ControllerDevice
{
    Point getRightTop();
    Point getLeftTop();

    void start();
}

Visual Studio 说“该方法包含无效参数”

4

2 回答 2

0

您需要为 getLeftTop 和 getRightTop 方法提供参数;从上面的代码中,您尝试将函数本身作为参数提供给 doJudge 方法

根据您上次的更新,您的线路应该是

j.doJudge(c.getLeftTop(), c.getRightTop(), f);
于 2012-11-19T07:02:31.130 回答
0

如果您想将类的实例作为参数传递,请尝试这样..

public void Create(Object c)
{
   Class x = (Class)c; // type cast your class
}
于 2012-11-19T07:02:51.193 回答