Tag: operator keyword

为什么重载true和false而不是定义bool运算符?

我一直在阅读有关在C#中重载true和false的内容,我想我理解这与定义bool运算符之间的基本区别。 我看到的例子是这样的: public static bool operator true(Foo foo) { return (foo.PropA > 0); } public static bool operator false(Foo foo) { return (foo.PropA <= 0); } 对我来说,这跟说: public static implicit operator bool(Foo foo) { return (foo.PropA > 0); } 据我所知,区别在于,通过分别定义true和false,您可以拥有一个既是真也可以是假的对象,或者既不是真也不是假: public static bool operator true(Foo foo) { return true; } public static bool operator false(Foo […]

范围解析运算符::与成员访问运算符。 在C#中

在C#中, A::B和AB什么区别? 我注意到的唯一区别是只有::可以与global一起使用,但除此之外,有什么区别? 为什么它们都存在?

运算符’==’不能应用于’int’和’string类型的操作数

我正在写一个程序,我想到一个数字,计算机猜测它。 我正在尝试测试它,但我一直都会遇到错误。 错误是主题标题。 我使用Int.Parse转换我的字符串,但我不知道为什么我收到错误。 我知道它说’==’不能和整数一起使用,但是我在网上看到的所有内容以及我class上的幻灯片都使用它,所以我被卡住了。 代码是不完整的,我不想让它运行,我只是想解决问题。 非常感谢任何帮助,谢谢:D class Program { static void Main(string[] args) { Console.Write(“Enter any number after 5 to start: “); int answer = int.Parse(Console.ReadLine()); { Console.WriteLine(“is it 3?”); if (answer == “higher”)

c#中的声明是分配内存还是分配内存的新运算符?

c#中的声明是为要创建的变量分配内存,还是分配内存的新运算符,并且能够调用构造函数来初始化内存中的已分配变量? 根据我的理解,如果没有new运算符,则无法调用任何类型的构造函数。 我对么?

VB.Net Power运算符(^)从C#重载

我正在编写一个暴露给VB.Net的C#类。 我想重载vb.net ^运算符,以便我可以写: Dim c as MyClass Set c = New … Dim d as MyClass Set d = c^2 在C#中, ^运算符是xor运算符,幂运算符不存在。 有没有办法可以做到这一点?