跳转到内容

C# 编程/关键字/显式

来自维基教科书,开放的书本,开放的世界

当值被隐式转换时,运行时不需要开发人员在代码中进行任何转换以使值转换为其新的类型。

以下是一个示例,开发人员在其中显式转换

// Example of explicit casting.
float fNumber = 100.00f;
int iNumber = (int) fNumber;

开发人员已经告诉运行时,“我知道我在做什么,强制执行此转换”。

隐式转换意味着运行时不需要任何提示即可执行转换。这是一个示例。

// Example of implicit casting.
byte bNumber = 10;
int iNumber = bNumber;

关键字

[编辑 | 编辑源代码]

请注意,开发人员不需要进行任何转换。隐式转换的特殊之处在于,转换到的类型上下文是完全无损的,即转换为该类型不会丢失任何信息,因此可以毫无顾虑地转换回来。

explicit关键字用于创建仅通过指定显式类型转换才能使用的类型转换运算符。

此结构有助于软件开发人员编写更易读的代码。具有显式转换名称可以清楚地表明正在进行转换。

class Something 
{
  public static explicit operator Something(string s)
  {
     // Convert the string to Something
  }
}

string x = "hello";

// Implicit conversion (string to Something) generates a compile time error
Something s = x;

// This statement is correct (explicit type name conversion)
Something s = (Something) x;



C# 关键字
abstract as base bool break
byte case catch char checked
class const continue decimal default
delegate do double else enum
event explicit extern false finally
fixed float for foreach goto
if implicit in int interface
internal is lock long namespace
new null object operator out
override params private protected public
readonly ref return sbyte sealed
short sizeof stackalloc static string
struct switch this throw true
try typeof uint ulong unchecked
unsafe ushort using var virtual
void volatile while
特殊 C# 标识符(上下文关键字)
add alias async await dynamic
get global nameof partial remove
set value when where yield
上下文关键字(用于查询)
ascending by descending equals from
group in into join let
on orderby select where
华夏公益教科书