有没有办法从" functionone"中获取参数值?并在" functiontwo"中计算它。没有再写那个小代码,例如我的意思
public void functionone(int x, int y)
{
x = 1;
y = 2;
}
public void functiontwo(int a , int b )
{
a=x+y;
b=x-y;
Console.WriteLine(a);
Console.WriteLine(b);
}
答案 0 :(得分:0)
我猜你正在错误地实现functionone 这样做: public void functionone(int x,int y) { x = 1; y = 2; } 通常不是在方法中传递参数和更改其值的方法, 或者用另一种方式说,x和y应该保存你作为参数传递的值,而不是在方法中分配..
定义全局x和全局y,然后您可以在该范围内的任何位置访问它。
class Abc{
int globalX;
int globalY;
....
public void functionone(int x, int y)
{
globalX = 1 + x;
globalY = 2 + y;
}
public void functiontwo(int a , int b )
{
a=globalX + globalY;
b=globalX - globalY;
Console.WriteLine(a);
Console.WriteLine(b);
}
}
答案 1 :(得分:0)
解释我的comment:
<input type="time" th:placeholder="${recipe.prepTime}" th:field="${recipe.prepTime}"/>
这样您就可以设置传递给int globalX;
int globalY;
public void functionone(ref int x, ref int y)
{
x = 1;
y = 2;
}
public void functiontwo(ref int a , ref int b)
{
a = globalX + globalY;
b = globalX - globalY;
Console.WriteLine(a);
Console.WriteLine(b);
}
// in main
functionone(ref globalX, ref globalY);
// globalX and globalY are now 1 and 2
functiontwo(ref a, ref b);
// a = 3 and b = -1 -> 'globalX +/- globalY'
或functionone
的任何变量的值。
然而它看起来不太好,在我看来这不是一个好的代码。您的概念似乎有误,所以也许您可以发布您遇到的问题的描述?