博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C#核心编程结构(2)
阅读量:5987 次
发布时间:2019-06-20

本文共 1488 字,大约阅读时间需要 4 分钟。

此系列文章根据《C#与.NET 3.5高级程序设计(第四版)》进行笔记。

 

  1. 函数参数修饰符:
    • (无):按值传递
    •  out:被此修饰符修饰的参数是作为输出的参数,如add(int a,int b,out int sum),注意两点:1、方法内sum必须被赋值,否则出错。2、out用法有一个好处就是可定义多个输出参数,使得一个函数可有多个返回值。如add(int a,int b,out int sum,out int count)。输出参数为按引用传递。
    • params:如add(params double[] values),调用方法时只需这么做而不用创建数组:add(0.7,8.99,2)。其实CLR还是会创建数组。只是方便调用者。
    • ref:按引用传递。ref和out有区别。ref的参数在调用方法前需初始化,out的参数在调用方法前无需初始化,因为out参数在方法体内必须被赋值,否则出错。P84。这个区别可理解为:out参数是将作为函数的返回值来用的,而ref只是希望将参数按引用传递传入参数进行处理,那么out参数作为返回值不用在调用方法前初始化,而ref参数就需要在处理前即调用方法前初始化。
  2. 某个变量如userid,userid.GetType(),是获得此变量的完全限定名。因为所有的类型都继承自Object,object有GetType方法。
  3. 熟悉数组的基本操作。P88
  4. 枚举类型enum。可控制枚举的底层存储:enum EmpType:byte {...,...} ,EmpType后面的:byte表示该枚举底层存储为byte类型,即0-255.注意枚举类型只能存储数字,即int,short,long,ushort等等。初始化枚举类型的形式:EmpType em=EmpType.Manager;一个变量接受枚举中的其中一个值。P93
  5. 结构类型struct。理解为轻量级的类类型。
  6. 值类型与引用类型。1)、将一个结构体复制给另一个结构体时,其中一个改变里面的值,另一个不随着改变。而类的话,其中一个改变,另一个会随着改变,即两个引用指向同一个托管堆的对象。2)、若结构体A中包含一个类对象,当将一个A实例复制到另一个实例,两个实例中值类型保存两个副本,而引用类型保存一个副本。3)、理解按值传递引用类型和按引用传递引用类型。按值传递引用类型,被调用者可能改变对象的状态数据的值,但不能改变所引用的对象;按引用传递引用类型,被调用者可能改变对象的状态数据的值和所引用的对象。 P99.
  7. c#的可空类型。按照规则,null用来建立一个空的对象引用,所以值类型永远不可以被赋值为null。而引用类型可被赋值为null。为了让值类型也可赋值为null。可采用以下方法:bool? a=null;编译通过,即在数据类型后加“?”,这种做法只对值类型有效。?实际上是System.Nullable的简写。可空类型的好处在于,数据库的字段有可能为null,若为值类型增加null值,可赋值为null,通过判断是否为null来判断。还有其中要注意的一点是:??。??的用法如下:int? mydata=dr.GetData() ?? 100;意义为当返回值为null时,赋值为100。
       8.c#类的默认修饰符是 internal,类成员默认的访问修饰符是private

    9. 对于参数类型为委托的参数,可以传入委托类型方法。

转载于:https://www.cnblogs.com/skywithcloud/archive/2011/07/31/2122609.html

你可能感兴趣的文章
疯狂java学习笔记1025---java集合类概述
查看>>
PopupWindow整理
查看>>
oracle 菜鸟学习之 decode中if-then-else逻辑
查看>>
ubuntu 12.10 Root filesystem check failed.
查看>>
thinkphp3.2插件
查看>>
openstack issue 2
查看>>
证书制作方法
查看>>
VMware VSAN 入门与配置(二)
查看>>
Wvtool学习(四):实现wvtool与IK_Analyzer的分词结合
查看>>
Nginx提升学习架构总结
查看>>
java 使用 ftp下载文件失败的问题
查看>>
分布式事务的解决方案
查看>>
Centos 默认的iptables
查看>>
PyQt4 精彩实例分析 实例9 利用Qt Designer设计一个对话框
查看>>
Windows AD证书服务系列---部署CA(1)
查看>>
我的友情链接
查看>>
ASSERT函数
查看>>
xml文档解析
查看>>
一款能把Phone、iPod、iPad 里的音乐导出传回苹果电脑的软件:Senuti
查看>>
AECS4考试C卷
查看>>