2010-11-16 62 views
3

我可以从c#中的函数返回类对象作为返回值,而不是返回字符串或int或..etc从函数返回类#

+3

你的问题不明确。你想要一个返回类(即类型,而不是实例)的函数,还是你想要一个返回类型为'object'(System.Object)的函数? – 2010-11-16 04:23:43

回答

8

C#中的类对象是一个类型。所以你绝对可以从函数返回它:

public Type Foo() { 
    return typeof(string); 
} 

public Type Bar() { 
    return someNonNullVariable.GetType(); 
} 
+0

ok这个函数有什么问题 public Bill_spec Get_Bill_Items(string getbillnum,Bill_spec current_bill) {return current_bill;} – kartal 2010-11-16 03:54:39

+0

你正在返回一个Bill_spec的实例,而不是一个类对象。 (我忽略了一个事实,即你只是返回一个参数,这使得一个奇怪的功能。) – 2010-11-16 04:04:07

4

我假设你想从函数返回一个类的实例,那么答案是肯定的。一个类的实例不过是一个基本上像.NET中所有其他对象一样的对象。

例子:

public class MeaningfulClassName 
{ 
    public int Val1; 
    public string Val2; 
    .... 
} 

public class Processor 
{ 
    public MeaningfulClassName MyFunction(int something, string somethingelse) 
    { 
     var ret = new MeaningfulClassName(); 

     .... 

     return ret; 
    } 
}