Fosdccf.blog.chinaunix.net
sdccf
全部博文(19283)
Linux酷软(214)
tmp(0)
PostgreSQL(93)
Solaris(383)
AIX(173)
SCOUNIX(575)
DB2(1005)
Shell(386)
C/C++(1187)
MySQL(1750)
Sybase(465)
Oracle(3695)
Informix(548)
HP-UX(0)
IBM AIX(2)
Sun Solaris(0)
BSD(1)
Linux(8597)
SCO UNIX(23)
2011年(1)
2009年(125)
2008年(19094)
2007年(63)
clifford
linky521
曾德标
fengzhan
leon_yu
mcuflowe
yt200902
guanyuji
GY123456
snow888
carlos94
丸喵喵
sean229
cxunix
可怜的猪
cqxc413
xzzgege
wb123456
分类: C/C++
2008-04-15 19:19:33
1.参数C#的方法和C++中的函数在返回值,参数传递方面是一样的,唯一的区别是引用的传递。也许你想起来上面所讲,C#中取消了&操作符,这意味着没有了引用传递了,其实不是没有,而是不用&,改成了ref,例: class Class1 { static void Main(string[] args) { int a=1,b=2; Console.WriteLine ("{0} {1}",a,b); change(ref a,ref b) ; Console.WriteLine ("{0} {1}",a,b); } static void change(ref int a,ref int b) { int c; c=a; a=b; b=c; } } 输出结果: 1 2 2 1 在形参和实参中加上ref就完成了引用,这样对a,b的值进行了交换。 2.方法重载 C#的函数重载和C++一样没有区别。 3.结构函数 上面我用了方法,这里是函数,所以它首先不需要关键字static,这个函数是一个结构的函数,它在类的外部,所以不需要static。例: struct mytext { public int num; public int text() { return num; } } class Class1 { static void Main(string[] args) { mytext frist; int a; frist.num =5; a=frist.text (); Console.WriteLine ("{0}",a); } } 输出结果: 5
class Class1 { static void Main(string[] args) { int a=1,b=2; Console.WriteLine ("{0} {1}",a,b); change(ref a,ref b) ; Console.WriteLine ("{0} {1}",a,b); } static void change(ref int a,ref int b) { int c; c=a; a=b; b=c; } }
输出结果:
1 2 2 1
在形参和实参中加上ref就完成了引用,这样对a,b的值进行了交换。
2.方法重载
C#的函数重载和C++一样没有区别。
3.结构函数
上面我用了方法,这里是函数,所以它首先不需要关键字static,这个函数是一个结构的函数,它在类的外部,所以不需要static。例:
struct mytext { public int num; public int text() { return num; } } class Class1 { static void Main(string[] args) { mytext frist; int a; frist.num =5; a=frist.text (); Console.WriteLine ("{0}",a); } }
输出结果: 5
上一篇:移形幻影大法 C++程序员快速学习C#之二 (3)
下一篇:移形幻影大法 C++程序员快速学习C#之二 (5)
登录 注册