重载真假运算符有什么作用?
我只是C#的初学者,但我正在努力学习一切。 但是,我坚持重载真假; 这是什么意思? 请(尽量)尽可能地给出答复(这样即使是’13’岁的人也能理解逻辑)。 (请确保尽可能让它变得可以理解,谢谢)。 如果可以的话,请解释如果coord改变为其他内容会产生什么结果(例如:(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(); } }
我只是C#的初学者,但我正在努力学习一切。
确保最少分配几十年。 我经常学习这门语言的新知识。
我被困在重载真假上; 这是什么意思?
它们很少使用; 它们主要用于制作用户定义的&&
和||
运营商是短路的。
阅读我关于这个主题的系列文章; 你会对第三部分特别感兴趣,但你应该阅读整篇文章。
https://ericlippert.com/2012/03/26/null-is-not-false-part-one/
如果可以的话,请解释如果coord改变为其他内容会产生什么结果(例如:(3,5))。
如果你想知道改变某些程序时程序的作用,请更改并运行它 ,很快就会知道!