基本的c#查询

时间:2011-05-05 13:06:42

标签: c#

我仍然是c#的新手,并且有些东西我无法理解:

在VBA中,例如,如果我需要在整个应用程序中使用一些代码,我会把它放在一个函数中,然后只需使用函数的名称就可以调用它,例如

Sub Something()
    If variable = x then
        RunMyFunction
    end if
End Sub

在c#中调用可重用代码有类似的方法吗?我确实意识到它与我之前合作过的完全不同的野兽

感谢

5 个答案:

答案 0 :(得分:2)

private void Something()
{
   if (variable == x)
   {
      RunMyFunction();
   }
}

private void RunMyFunction()
{
  // does something
}

换句话说 - 它基本相同。您可以将可重用函数定义为方法(上面的运行函数),然后按名称(带括号)调用它。

答案 1 :(得分:2)

是的C#还带有功能。 Sub实际上是一个void“返回值”的函数。

所以你的代码粗略地翻译成C#将是:

string RunMyFunction()
{
   return "hello";
}

void Something(variable, x)
{
   if (variable == x)
   {
      string value = RunMyFunction();
      //.....
   }
}

答案 2 :(得分:0)

以下是一个函数示例:

public int AddNumbers(int number1, int number2)
{
    int result = number1 + number2;
    if(result > 10)
    {
        return result;
    }
}

您可能会发现本文很有用:

http://csharp.net-tutorials.com/basics/functions/

你需要从VBA做出的最大启示是C#是真正面向对象的。你必须习惯于函数是你必须实例化的类的成员(在大多数情况下)。

答案 3 :(得分:0)

是的,我有时会创建一个名为CommonFunctions.cs的新类,在这个类中我会有方法:

public class CommonFunctions
{
    public static void Something(int Variable)
    {
        if(Variable == 5)
            CommonFunctions.RunAnother();
    }
    public static void RunAnother()
    {

    }
}

答案 4 :(得分:0)

如果您的函数没有返回值,请使用void:

private void FunctionName ()
   {
      // Do something...
   }

如果函数返回值比函数具有函数名前的值类型:

private int FunctionNameReturnInt(int a, int b)
{     
   // Do something...
   int res = a + b;   
   return num;
}

...

// Calling functions
FunctionName();

int res;
res = FunctionNameReturnInt(1,2);

`