0

有人可以告诉我这个 c# 语法到底是什么意思:

return (int)MyPersistenceClass.GetValue(REG_ENTRY_HHHH, DEFAULT_REG_ENTRY_HHHH) == 1

说 if (int)GetValue() == 1 返回值是否正确。我不确定当 (int)GetValue() != 1 时我会返回什么。非常感谢任何帮助。

4

2 回答 2

1

这里有几个语法。

MyPersistenceClass.GetValue(REG_ENTRY_HHHH, DEFAULT_REG_ENTRY_HHHH)是(可能)从注册表读取值的静态方法调用。

(int)x是转换为 的强制转换表达式xint因此(int)MyPersistenceClass.GetValue(REG_ENTRY_HHHH, DEFAULT_REG_ENTRY_HHHH)将从注册表读取的值转换为int

==相等运算符。它比较两件事并返回一个bool值: true如果它们相同,false如果它们不同。

return x评估x,使结果成为函数的返回值并退出函数。

将它们放在一起,您的代码会从注册表中读取一个值。该值被转换为 anint并与 进行比较1。如果值是1函数返回true,否则返回false

于 2012-08-07T18:33:10.700 回答
0

一个简单的三元语句将为您工作:

return (int)MyPersistenceClass.GetValue(REG_ENTRY_HHHH, DEFAULT_REG_ENTRY_HHHH) == 1 ? 1 : 0;

因此,如果 GetValue() == 1,则返回该值。否则,返回 0。

于 2012-08-07T14:19:20.483 回答