Docs-.NET-C#-指南-语言参考-关键字-内置类型-值类型:值类型的功能
| ylbtech-Docs-.NET-C#-指南-语言参考-关键字-内置类型-值类型:值类型的功能 |
| 1.返回顶部 |
值类型(C# 参考)
- 2018/11/26
有两种值类型:
值类型的主要功能
值类型的变量包含类型的值。 例如,int 类型的变量可以包含值 42。 它不同于引用类型的变量,后者(也称为对象)包含对类型实例的引用。 将新的值分配到值类型的变量时,会复制该值。 将新的值分配到引用类型的变量时,会复制引用,而不复制对象本身。
所有值类型都隐式派生自 System.ValueType。
与引用类型不同,不能从值类型派生新类型。 但是,与引用类型一样,结构可以实现接口。
值类型变量不能默认为 null。 但相应的可为空的值类型的变量可以为 null。
每个值类型都有一个隐式无参数构造函数,用于初始化该类型的默认值。 有关值类型的默认值的信息,请参阅默认值表。
简单类型
简单类型是 C# 提供的一组预定义的结构类型,其中包括以下类型:
简单类型通过关键字标识,但这些关键字只是 System 命名空间中的预定义结构类型的别名。 例如, int 是 System.Int32 的别名。 有关别名的完整列表,请参阅内置类型表。
简单类型不同于其他结构类型,简单类型允许某些附加操作:
可以使用文本初始化简单类型。 例如,
'A'是类型char的文本,2001是类型int的文本。可以使用 const 关键字声明简单类型的常数。 无法包含其他结构类型的常数。
其操作数都是简单类型常数的常量表达式在编译时进行评估。
初始化值类型
在使用 C# 中的本地变量之前,必须对其进行初始化。 例如,可以声明未初始化的本地变量,如以下示例所示:
int myInt;
在未初始化之前,无法使用。 可以使用以下语句将其初始化:
myInt = new int(); // Invoke parameterless constructor for int type.
此语句等效于以下语句:
myInt = 0; // Assign an initial value, 0 in this example.
当然,可以在同一语句中进行声明和初始化,如以下示例所示:
int myInt = new int();
- 或 -
int myInt = 0;
使用 new 运算符调用特定类型的无参数构造函数,并将默认值赋给变量。 在上述示例中,无参数构造函数将值 0 赋给 myInt。 有关通过调用无参数构造函数所赋予的值的详细信息,请参阅默认值表。
对于用户定义类型,使用 new 调用无参数构造函数。 例如,以下语句调用 Point 结构的无参数构造函数:
var p = new Point(); // Invoke parameterless constructor for the struct.
进行此调用后,该结构被视为已明确赋值;即,它的所有成员都被初始化为其默认值。
有关 new 运算符的详细信息,请参阅 new。
有关设置数值类型的输出格式的信息,请参阅设置数值结果表的格式。
请参阅
| 2.返回顶部 |
| 3.返回顶部 |
| 4.返回顶部 |
| 5.返回顶部 |
| 6.返回顶部 |
![]() |
作者:ylbtech 出处:http://ylbtech.cnblogs.com/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 |
Docs-.NET-C#-指南-语言参考-关键字-内置类型-值类型:值类型的功能的更多相关文章
- Docs-.NET-C#-指南-语言参考-关键字-内置类型-值类型:整型数值类型
ylbtech-Docs-.NET-C#-指南-语言参考-关键字-内置类型-值类型:整型数值类型 1.返回顶部 1. 整型数值类型(C# 参考) 2019/10/22 “整型数值类型”是“简单类型”的 ...
- Docs-.NET-C#-指南-语言参考-关键字-值类型:内置数值转换
ylbtech-Docs-.NET-C#-指南-语言参考-关键字-值类型:内置数值转换 1.返回顶部 1. 内置数值转换(C# 参考) 2019/10/22 C# 提供了一组整型和浮点数值类型. 任何 ...
- Docs-.NET-C#-指南-语言参考-关键字-值类型:struct
ylbtech-Docs-.NET-C#-指南-语言参考-关键字-值类型:struct 1.返回顶部 1. struct(C# 参考) 2015/07/20 struct 类型是一种值类型,通常用来封 ...
- Docs-.NET-C#-指南-语言参考-关键字-值类型:enum
ylbtech-Docs-.NET-C#-指南-语言参考-关键字-值类型:enum 1.返回顶部 1. enum(C# 参考) 2015/07/20 enum 关键字用于声明枚举,一种包含一组被称为枚 ...
- Docs-.NET-C#-指南-语言参考-关键字-值类型:char
ylbtech-Docs-.NET-C#-指南-语言参考-关键字-值类型:char 1.返回顶部 1. char(C# 参考) 2019/10/22 char 类型关键字是 .NET System.C ...
- Docs-.NET-C#-指南-语言参考-关键字-值类型:bool
ylbtech-Docs-.NET-C#-指南-语言参考-关键字-值类型:bool 1.返回顶部 1. bool(C# 参考) 2015/07/20 bool 关键字是 System.Boolean ...
- Docs-.NET-C#-指南-语言参考-关键字-值类型-:浮点数值类型
ylbtech-Docs-.NET-C#-指南-语言参考-关键字-值类型-:浮点数值类型 1.返回顶部 1. 浮点数值类型(C# 引用) 2019/10/22 “浮点类型”是“简单类型”的子集,可以使 ...
- Docs-.NET-C#-指南-语言参考-关键字-值类型:可以 null 的值类型
ylbtech-Docs-.NET-C#-指南-语言参考-关键字-值类型:可以 null 的值类型 1.返回顶部 1. Nullable value types (C# reference) 2019 ...
- Docs-.NET-C#-指南-语言参考-关键字:C# 关键字
ylbtech-Docs-.NET-C#-指南-语言参考-关键字:C# 关键字 1.返回顶部 1. C# 关键字 2017/03/07 关键字是预定义的保留标识符,对编译器有特殊意义. 除非前面有 @ ...
随机推荐
- ISCC之Re1
IDA打开,调试选ELF,跟踪main函数 发现有一个not_the_flag函数,跟进去 这里判断了一下a1的值是否为42,大致判断引号里面的有可能是flag,直接放到Linux下运行 提交不要有任 ...
- linux系统编程综合练习-实现一个小型的shell程序(一)
之前已经花了不少篇幅学习了linux系统编程的很多知识点:文件与io.进程.信号.管道,而零散的知识点,怎么能够综合的串接起来是学习的一个很重要的目的,当然最好的方式就是用所学的知识点做一个项目了,所 ...
- DT二次开发之-采购页面加入好看的倒计时
加入采购页面倒计时,个人感觉挺漂亮的,做下笔记. <span id="timer" ></span> {if $totime} <script typ ...
- react 学习记录
1. 脚手架搭建项目 create-react-app https://www.jianshu.com/p/d196761c8332 2. UI框架 https://ant.design/docs ...
- N皇后问题代码
/*.h*/ #ifndef _NQUEEN_H #define _NQUEEN_H #include<iostream> #include<vector> #include& ...
- 洛谷 P4058 [Code+#1]木材 题解
P4058 [Code+#1]木材 题目描述 有 \(n\) 棵树,初始时每棵树的高度为 \(H_i\),第 \(i\) 棵树每月都会长高 \(A_i\).现在有个木料长度总量为 $ S$ 的订单, ...
- CF1163E Magical Permutation【线性基,构造】
题目描述:输入一个大小为\(n\)的正整数集合\(S\),求最大的\(x\),使得能构造一个\(0\)到\(2^x-1\)的排列\(p\),满足\(p_i\oplus p_{i+1}\in S\) 数 ...
- Android中为何使用Log而不用System.out
Android中为何使用Log而不用System.out System.out除了使用方便一点以外有以下缺点:日志不可控制,打印时间无法确定,不能添加过滤器,日志没有级别之分. 使用Log比如想打印一 ...
- mysql连接数
如何实时查看mysql当前连接数? 如何实时查看mysql当前连接数? 1.查看当前所有连接的详细资料: ./mysqladmin -uadmin -p -h10.140.1.1 processlis ...
- Tuxedo 介绍
快速阅读 介绍Tuxedo,以及webLogic两个中间件,都是oracle旗下的产品 ,现在各银行系统用的最多.因为有部分项目涉及,所以有必须弄清楚,明白 . 什么是Tuxedo 官方介绍:http ...
