个人学习笔记(一)

C#中引用和C/C++ 指针的区别

C/C++程序员可能习惯性地将引用类型想象成指针,虽然C#的引用类型和指针由许多共同点,但指针提供的功能多得多。例如,在C/C++应用程序中,一个指针可以引用几乎任何内存块,无论块中容纳的是什么类型的数据,这个特性偶尔非常有用,但在大多数时候,它是造成许多难以发现的编程错误的罪魁祸首,在C#中,所有引用都是严格限定了类型的;你不能声明一个引用变量来引用一种类型,再用同一个变量来访问容纳了一种不同类型的内存块.

结构和类的主要区别:

                     结构               类

是值类型还是引用类型?         值类型              引用类型

实例存在于堆上还是堆栈上?   结构的实例称为值,存在于堆栈上   类的实例称为对象,存在于堆上\

可以声明一个默认构造函数吗?       不可以               可以

如果声明自己的默认构造函数         会                不会   

编译器仍会生成默认构造函数吗?   

如果在自己的构造函数中不初始化一个     不会                会

字段,编译器会帮你初始化吗?

可以在声明一个实例字段的同时初始化它吗?   不可以              可以     

可以从基类继承吗?             不可以               可以

数组和集合的区别:

1.数组要声明它容纳的元素类型,而集合不声明,这是由于集合以object的形式来存储它的元素.

2.一个数组实例具有固定的大小,不能伸缩,集合则可根据需要动态改变大小.

3.数组是一种可度可写的数据结构,没有办法创建一个只读数组,然而,可以使用集合类提供的ReadOnly方法以只读方式来使用集合.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值