-10

我在 C# 的一个随机 doxygen 示例中看到了这一点,所有在谷歌上搜索它的尝试都失败了,因为我不知道它叫什么或它做什么。

int test(int a, string b);       
int i = test(1, "b");

任何人有任何见解?

编辑

所以这是一个有趣的尝试。我把它放到一个新程序中,但它不能编译,除非我在它前面放了一个静态。现在它编译了。

namespace ConsoleApplication1
{
    class Program
    {
        static int test(int a, string b);
        static void Main(string[] args)
        {
            int i = test(1, "b");
        }
    }
}
4

2 回答 2

2

第一行看起来像一个接口声明。就是说一个类有一个接受整数和字符串并返回整数的方法。

然后它调用该方法。但是,这目前无效。由于您没有链接到源,我不确定其余部分是否已被删除。有效代码如下所示:

public interface ISomeInterface
{
    int test(int a, string b);       
}

ISomeInterface instance = GetInstance();

int i = instance.test(1, "b");
于 2012-04-04T13:13:41.447 回答
2

这不是真实的或不完整的代码。

您发布的代码无法编译,原因有两个:

1.如果你把它放在一个方法中,它不会因为第一行而编译:

只有赋值、调用、递增、递减和新对象表达式可以用作语句。

2.如果你把它放在一个方法之外它不会因为两行而编译:

'Test.Program.test(int, string)' 必须声明一个主体,因为它没有被标记为抽象、外部或部分。

字段初始值设定项不能引用非静态字段、方法或属性“Test.Program.test(int, string)”

编辑:即使是新的代码版本也无法编译:

'Test.Program.test(int, string)' 必须声明一个主体,因为它没有被标记为抽象、外部或部分。

于 2012-04-04T13:19:28.683 回答