c#如何在另一个脚本中使用返回值

本文关键字:返回值 脚本 另一个 | 更新日期: 2023-09-27 18:06:41

谢谢。假设我有两个脚本。

我从一个脚本中的方法中得到一个返回值。

public class ClassA {
    public int A (int a, int b)
    {
        return a + b;
    }
}

,我想在另一个脚本中使用返回值(int A):

class ClassB {
    public ClassA _ClassA = new ClassA();
    public int TheReturn;
    public void update()
    {
        TheReturn = _ClassA.A;
    }
}

我就是这样尝试的。而且它不工作…

非常感谢大家指出return = _ClassA.A;

如果A的Input是一个读取值(一个不断变化的值)。例如SerialPort.Reading(),而不是int a, int b)。我想使用ClassA的方法a的实际"返回"值。我该怎么办?

我可以使用类似print()的东西,然后在另一个类中使用Read()吗?

c#如何在另一个脚本中使用返回值

你的问题真的是梅西,但也许这就是你要找的?

class ClassB 
{
    public ClassA _ClassA = new ClassA();
    public int TheReturn;
    public void update(int x, int y)
    {
        TheReturn = _ClassA.A(x,y);
    }
}

不要从脚本的角度考虑问题。对于c#来说,代码是在一个文件中还是分散在100个文件中并不重要。这只是一个组织问题。

你有两个类。

ClassA声明了一个方法A,它有两个输入参数和一个返回值。

如果你想使用这个方法,你首先需要创建一个ClassA对象。你正在这么做。到目前为止一切顺利。

那么你必须调用这个方法并传递所需的参数。

ClassA aObject = new ClassA();
int result;
result = aObject.A(2, 7);

通过在方法名之后和参数列表周围放置一对圆括号来实现。在本例中,A方法返回的值存储在变量result中。你现在可以像这样打印

Console.WriteLine(result);

你也可以直接使用结果来代替

Console.WriteLine(aObject.A(2, 7));

实际上,方法调用可以是表达式的一部分,如

Console.WriteLine(aObject.A(2, 7) * aObject.A(3, 9) + 10);

参见:Methods (c# Programming Guide)