此C#语法称为什么,它做什么?

我正在学习C#,并且是一个初学者.我想请求一个硬件项目的URL(控制窗帘的raspberry pi服务器),它可以工作,但是我不明白下面的这一行:

HttpWebRequest request = (HttpWebRequest) WebRequest.Create(rpiIp.text);

我不明白“(HttpWebRequest)”位是什么意思,以及它如何影响“ WebRequest.Create();”.方法.

有人可以解释吗?

非常感谢
詹姆士

解决方法:

它称为显式演员表.从MSDN开始:

Explicit conversions (casts): Explicit conversions require a cast operator. Casting is required when information might be lost in the conversion, or when the conversion might not succeed for other reasons. Typical examples include numeric conversion to a type that has less precision or a smaller range, and conversion of a base-class instance to a derived class

WebRequest.Create方法返回一个类型为WebRequest的对象,该对象是一个抽象类,这意味着它的实例无法创建,只能从WebRequest继承的基础派生类型.在这种情况下,强制转换的作用是告诉编译器:“听着,我知道Create实际上从该方法返回了HttpWebRequest,所以让我像对待它一样对待”.转换完成后,如果实际类型为HttpWebRequest,它将成功;如果不是,则抛出InvalidCastException.

上一篇:mysql-代码点火器左外部联接


下一篇:Python SyntaxError:扫描三引号字符串文字时出现EOF