2个回答
展开全部
C#最常见的重载是构造函数重载,各种方法方法包括ToString()也可以重载,运算符+-*/也可以重载。
使用运算符重载时,必须用以下的方式声明:
public static结果类型operator运算符(参数)
这里operator是关键字,结果类型通常就是类本身或void型。operator关键字用于在类或结构声明中声明运算符。运算符声明可以采用下列四种形式之一:
public static result-type operator unary-operator ( op-type operand )
public static result-type operator binary-operator (
op-type operand,
op-type2 operand2
)
public static implicit operator conv-type-out ( conv-type-in operand )
public static explicit operator conv-type-out ( conv-type-in operand )
运算符只能采用值参数,不能采用梁州ref或out参数。任何运算符声丛隐明的前面都可以有一个可选的属性列表。
C# 允许用户定义的类型通过使用operator关键字定义静态成员函数来重载运算符。但不是所有的运算符都可被重载。若要在自定义类中重载运算符,需要在该类中创建具有正渗渣厅确签名的方法。该方法必须命名为operator X,其中X是正在重载的运算符的名称或符号。一元运算符具有一个参数,二元运算符具有两个参数。在每种情况下,参数的类型必须与声明该运算符的类或结构的类型相同。如下面的示例所示:
public static Complex operator +(Complex c1, Complex c2)
使用运算符重载时,必须用以下的方式声明:
public static结果类型operator运算符(参数)
这里operator是关键字,结果类型通常就是类本身或void型。operator关键字用于在类或结构声明中声明运算符。运算符声明可以采用下列四种形式之一:
public static result-type operator unary-operator ( op-type operand )
public static result-type operator binary-operator (
op-type operand,
op-type2 operand2
)
public static implicit operator conv-type-out ( conv-type-in operand )
public static explicit operator conv-type-out ( conv-type-in operand )
运算符只能采用值参数,不能采用梁州ref或out参数。任何运算符声丛隐明的前面都可以有一个可选的属性列表。
C# 允许用户定义的类型通过使用operator关键字定义静态成员函数来重载运算符。但不是所有的运算符都可被重载。若要在自定义类中重载运算符,需要在该类中创建具有正渗渣厅确签名的方法。该方法必须命名为operator X,其中X是正在重载的运算符的名称或符号。一元运算符具有一个参数,二元运算符具有两个参数。在每种情况下,参数的类型必须与声明该运算符的类或结构的类型相同。如下面的示例所示:
public static Complex operator +(Complex c1, Complex c2)
展开全部
C#函数重载
我们以前在C++中曾经知道C++中有函数重载的概念,现在在ASp.Net的C#中我们仍然可以使用函数重载的概念和定义:
假设我们在程序中定义了高判两个函数:String test(String str1) 而后 int test1(int i),他们的内容都是很简单的功能
Stringtest(Stringstr1){ Response.Write("函数重载测试,这个是String函数"); Return"123232"; } inttest(inti){ Response.Write("函数重载测试,这个是戚宴改int函数"); Return1; } 我们调用 test("豆腐") 和 test(888),编译器非但不会报错,而且会执行出不同的结果,这样。
C#函数重载给我们在编程的过程中带来了很大的方便,我们可以由编译器来决定祥旁根据我们参数的变化相应的执行不同的代码。而且 这个也是 面向对象编程的一个主要的特色之一。相信MS的确想让ASP.Net成为Web未来编程的规范。以上介绍C#函数重载。
我们以前在C++中曾经知道C++中有函数重载的概念,现在在ASp.Net的C#中我们仍然可以使用函数重载的概念和定义:
假设我们在程序中定义了高判两个函数:String test(String str1) 而后 int test1(int i),他们的内容都是很简单的功能
Stringtest(Stringstr1){ Response.Write("函数重载测试,这个是String函数"); Return"123232"; } inttest(inti){ Response.Write("函数重载测试,这个是戚宴改int函数"); Return1; } 我们调用 test("豆腐") 和 test(888),编译器非但不会报错,而且会执行出不同的结果,这样。
C#函数重载给我们在编程的过程中带来了很大的方便,我们可以由编译器来决定祥旁根据我们参数的变化相应的执行不同的代码。而且 这个也是 面向对象编程的一个主要的特色之一。相信MS的确想让ASP.Net成为Web未来编程的规范。以上介绍C#函数重载。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询