gpt4 book ai didi

c# - 重载 true 和 false 运算符有什么作用?

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

我只是 C# 的初学者,但我正在尝试学习所有内容。但是,我坚持重载 true 和 false;这是什么意思?请(尝试)给出尽可能基本的回复(这样即使是“13”岁的 child 也能理解其中的逻辑)。(请确保使其尽可能易于理解,谢谢)。如果可以,请解释如果坐标更改为其他内容(例如:(3,5))会出现什么结果。

我这里有预制代码:(你能解释一下改变坐标的不同输出吗)信息:- 程序是一个控制台应用程序- C#我创建了一个名为 Coord(代表坐标)的类。内部类:

class Coord
{
private int _x, _y;

public Coord(int x, int y)
{
_x = x;
_y = y;
}

public int x
{
get
{
return _x;
}
set
{
_x = value;
}
}

public int y
{
get
{
return _y;
}
set
{
_y = value;
}
}

public static bool operator true(Coord coord1)
{
if (coord1.x != 0 || coord1.y != 0)
{
return true;
}
else
{
return false;
}
}

public static bool operator false(Coord coord1)
{
if (coord1.x == 0 && coord1.y == 0)
{
return true;
}
else
{
return false;
}
}
}

内部主类程序:

class Program
{
static void Main(string[] args)
{
Coord coord = new Coord(0, 0);

if (coord)
{
Console.WriteLine("True");
}
else
{
Console.WriteLine("False");
}

Console.ReadLine();
}
}

最佳答案

I am only a beginner to C#, but am trying to learn everything.

确保至少分配几十年。我经常学习关于这门语言的新知识。

I am stuck on the overloading true and false; what does this mean?

它们很少被使用;它们主要用于使用户定义的 &&|| 运算符短路。

阅读我关于这个主题的系列文章;您会对第三部分特别感兴趣,但您应该通读整篇文章。

https://ericlippert.com/2012/03/26/null-is-not-false-part-one/

If you can, please explain what the outcome would be if the coord had changed to something else (such as: (3,5)).

如果您想知道当您更改某些内容时程序会做什么,更改并运行它,您很快就会知道!

关于c# - 重载 true 和 false 运算符有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38463991/

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