gpt4 book ai didi

c# - 预定义类型和自定义类型之间的 "symmetry"是什么意思?

转载 作者:行者123 更新时间:2023-11-30 14:12:30 25 4
gpt4 key购买 nike

目前,我正在阅读C# 5.0 in a Nutshell,在类型基础(位于第 2 章)子主题中,术语预定义类型和自定义类型的对称性是介绍...

...为什么作者要讨论这些类型之间的对称性?说类型是对称的有什么论据?

这是原文:

A beautiful aspect of C# is that predefined types and custom types have few differences. The predefined int type serves as a blueprint for integers. It holds data -32 bits- and provides function members that use that data, such as ToString. Similarly, our custom UnitConverter type acts as a blueprint for unit conversions. It holds data -the ratio- and provides function members to use that data.

最佳答案

文本的意思是语言中的所有类型都“表现得像对象”。例如,您可以这样做:

int i = 42;
Console.WriteLine(i.ToString()); // called a method on an int

尽可能轻松地做到这一点:

DateTime d = DateTime.Now;
Console.WriteLine(d.ToString()); // called a method on a DateTime

也就是说,如果您不知道id 的类型,您将无法仅通过阅读调用 的代码来推断任何内容。 ToString().

将此与 C++ 等语言进行对比:

std::string s = "hello";
std::cout << s.length();

int i = 42;
// ...but you cannot invoke any method on i; "ints are special"

这里 s.length() 编译的事实告诉我们 s 不是 int、指针或任何其他原始类型。

从技术角度来看,这种统一性不会给您带来任何好处,但它仍然是一个受欢迎的功能——尤其是如果您只是在学习这门语言。

关于c# - 预定义类型和自定义类型之间的 "symmetry"是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17374867/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com