0

我的程序有一些方法,其中一些调用了一些其他方法我的问题是我想使用一个方法在以前的方法中生成的一些数据,我不知道我应该怎么做。

namespace MyProg
{
   public partial class MyProg: Form
   {
        public static void method1(string text)
        {
           //procedures
           method2("some text");
           // Here i want to use the value from string letter from method2.
        }

        public static void method2(string text)
        {
           //procedures
           string letter = "A";  //Its not A its based on another method.
        }      
   }
}
4

2 回答 2

3

只需使用返回值:

public partial class MyProg: Form
{
    public static void method1(string text)
    {
       string letter = method2("some text");
       // Here i want to use the value from string letter from method2.
    }

    public static string method2(string text)
    {
       string letter = "A";  //Its not A its based on another method.
       return letter;
    }      
}

方法

方法可以向调用者返回一个值。如果返回类型(方法名称之前列出的类型)不是 void,则该方法可以使用 return 关键字返回值。带有关键字 return 后跟与返回类型匹配的值的语句将将该值返回给方法调用者...


既然您提到不能使用返回值,另一种选择是使用out参数

public static void method1(string text)
{
   string letter;
   method2("some text", out letter);
   // now letter is "A"
}

public static void method2(string text, out string letter)
{
   // ...
   letter = "A";
}  
于 2013-01-01T22:35:00.587 回答
0

您可以将值存储在类的成员变量中(在这种情况下必须是静态的,因为引用它的方法是静态的),或者您可以从方法 2 返回值,然后从方法 1 内部您想要调用的方法 2用它。

我会把它留给你来弄清楚如何编码。

于 2013-01-01T22:35:11.417 回答