动态铸造?

2023-12-30

我需要一种方法将对象转换为编译时未知的类型。

像这样的东西:

object obj;

public (type of obj) Obj
{
    get
    {
        return obj
    }
    set
    {
        obj = (type of obj)value;
    }
}

唯一知道的是 obj 是一个值类型。

我怀疑这样的事情是否可能发生。只是检查一下是否有人有聪明的方法来做到这一点。


这在 C# 3.0 中是不可能的,但如果您可以定义所有对象都实现的通用接口,则可以强制转换为该接口。

在 C# 4.0 中我们将得到dynamic允许我们进行 Duck Typing 的关键字。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

动态铸造? 的相关文章

  • C中的malloc内存分配方案

    我在 C 中尝试使用 malloc 发现 malloc 在分配了一些内存后浪费了一些空间 下面是我用来测试 malloc 的一段代码 include
  • 错误:表达式不产生值

    我尝试将以下 C 代码转换为 VB NET 但在编译代码时出现 表达式不产生值 错误 C Code return Fluently Configure Mappings m gt m FluentMappings AddFromAssemb
  • 在 C 中匹配二进制模式

    我目前正在开发一个 C 程序 需要解析一些定制的数据结构 幸运的是我知道它们是如何构造的 但是我不确定如何在 C 中实现我的解析器 每个结构的长度都是 32 位 并且每个结构都可以通过其二进制签名来识别 举个例子 有两个我感兴趣的特定结构
  • 使用 Newtonsoft 和 C# 反序列化嵌套 JSON

    我正在尝试解析来自 Rest API 的 Json 响应 我可以获得很好的响应并创建了一些类模型 我正在使用 Newtonsoft 的 Json Net 我的响应中不断收到空值 并且不确定我的模型设置是否正确或缺少某些内容 例如 我想要获取
  • 使用接口有什么好处?

    使用接口有什么用 我听说它用来代替多重继承 并且还可以用它来完成数据隐藏 还有其他优点吗 哪些地方使用了接口 程序员如何识别需要该接口 有什么区别explicit interface implementation and implicit
  • 回发后刷新时提示确认表单重新提交。我做错了什么?

    我有一个以空白 默认状态启动的仪表板 我让用户能够将保存的状态加载到仪表板中 当他们单击 应用 按钮时 我运行以下代码 function CloseAndSave var radUpload find radUpload1ID var in
  • 由 IHttpClientFactory 注入时模拟 HttpClient 处理程序

    我创建了一个自定义库 它会自动为依赖于特定服务的 Polly 策略设置HttpClient 这是使用以下方法完成的IServiceCollection扩展方法和类型化客户端方法 一个简化的例子 public static IHttpClie
  • 从 Linux 内核模块中调用用户空间函数

    我正在编写一个简单的 Linux 字符设备驱动程序 以通过 I O 端口将数据输出到硬件 我有一个执行浮点运算的函数来计算硬件的正确输出 不幸的是 这意味着我需要将此函数保留在用户空间中 因为 Linux 内核不能很好地处理浮点运算 这是设
  • 具有交替类型的可变参数模板参数包

    我想知道是否可以使用参数包捕获交替参数模式 例如 template
  • DbContext 和 ObjectContext 有什么区别

    From MSDN 表示工作单元和存储库模式的组合 使您能够查询数据库并将更改分组在一起 然后将这些更改作为一个单元写回存储 DbContext在概念上类似于ObjectContext 我虽然DbContext只处理与数据库的连接以及针对数
  • 如何禁用 fread() 中的缓冲?

    我正在使用 fread 和 fwrite 读取和写入套接字 我相信这些函数用于缓冲输入和输出 有什么方法可以在仍然使用这些功能的同时禁用缓冲吗 Edit 我正在构建一个远程桌面应用程序 远程客户端似乎 落后于服务器 我不知道可能是什么原因
  • 等待进程释放文件

    我如何等待文件空闲以便ss Save 可以用新的覆盖它吗 如果我紧密地运行两次 左右 我会得到一个generic GDI error
  • “接口”类似于 boost::bind 的语义

    我希望能够将 Java 的接口语义与 C 结合起来 起初 我用过boost signal为给定事件回调显式注册的成员函数 这非常有效 但后来我发现一些函数回调池是相关的 因此将它们抽象出来并立即注册所有实例的相关回调是有意义的 但我了解到的
  • 如何在非控制台应用程序中查看 cout 输出?

    输出到调试窗口似乎相当繁琐 我在哪里可以找到cout如果我正在编写非控制台信息 则输出 Like double i a b cout lt lt b lt lt endl I want to check out whether b is z
  • C++ 函数重载类似转换

    我收到一个错误 指出两个重载具有相似的转换 我尝试了太多的事情 但没有任何帮助 这是那段代码 CString GetInput int numberOfInput BOOL clearBuffer FALSE UINT timeout IN
  • 按 Esc 按键关闭 Ajax Modal 弹出窗口

    我已经使用 Ajax 显示了一个面板弹出窗口 我要做的是当用户按 Esc 键时关闭该窗口 这可能吗 如果有人知道这一点或以前做过这一点 请帮助我 Thanks 通过以下链接 您可以通过按退出按钮轻松关闭窗口 http www codepro
  • 如果没有抽象成员,基类是否应该标记为抽象?

    如果一个类没有抽象成员 可以将其标记为抽象吗 即使没有实际理由直接实例化它 除了单元测试 是的 将不应该实例化的基类显式标记为抽象是合理且有益的 即使在没有抽象方法的情况下也是如此 它强制执行通用准则来使非叶类抽象 它阻止其他程序员创建该类
  • C++ 条件编译

    我有以下代码片段 ifdef DO LOG define log p record p else define log p endif void record char data 现在如果我打电话log hello world 在我的代码中
  • 无法接收 UDP Windows RT

    我正在为 Windows 8 RT 编写一个 Windows Store Metro Modern RT 应用程序 需要在端口 49030 上接收 UDP 数据包 但我似乎无法接收任何数据包 我已按照使用教程进行操作DatagramSock
  • 我的班级应该订阅自己的公共活动吗?

    我正在使用 C 3 0 遵循标准事件模式我有 public event EventHandler

随机推荐

  • 如何使用 GCD 在后台定期运行代码块?

    如何使用 GCD 在后台定期运行代码块 我正在尝试编写一个具有多个子系统的游戏引擎 例如渲染 物理 游戏逻辑等 有些任务应该是事件驱动的 但有些任务 如物理系统 应该在后台以恒定的时间 例如 1 100 秒后 定期调用 我创建了一个代码块
  • 实现无限循环时,使用 while(1) 与 for(;;) 与 goto (在 C 中)有区别吗?

    实现无限循环时 使用有什么区别while 1 vs for vs goto 谢谢 陈兹 即使您关闭优化器 它们也是等效的 Example include
  • 如何使用 Gmail API 检索电子邮件正文内容?

    我正在研究 Gmail API 假设我有兴趣查看哪封邮件包含字符串 foobar2000 到目前为止 这是我的代码 主程序 java package manhattan email bot import com google api cli
  • 自定义 Linq 订购

    我有一千多个文件夹 每个文件夹都包含一个或多个具有以下名称的文件 无序 Alison ext Heather ext Molly ext Paula ext Sam ext Ordered Molly ext Sam ext Heather
  • This.setstate 在回调中卸载

    这里真的很困惑 我更新到了 React Router 4 这需要一些更改 现在当我的注册表单在服务器端出现错误时 它会返回控制台错误 setState 只能更新已安装或正在安装的组件 这 通常意味着您在未安装的组件上调用了 setState
  • ckeditor angularjs指令:如何上传多个图像?

    我正在使用 ckeditor 指令 就像 在 Angular JS 中使用 CKEditor 内容更新 textarea 值 https stackoverflow com questions 18917262 updating texta
  • 如何延迟运行某些 JS 代码,直到下载完所有异步 JS 文件?

    UPDATE 我有以下代码
  • 如何使用console.readline()读取整数?

    我是一名正在学习 NET 的初学者 我尝试在控制台读取行中解析我的整数 但它显示格式异常 My code using System namespace inputoutput class Program static void Main s
  • 有没有办法在 Inno Setup 中读取系统信息

    有没有办法在安装过程中 仅在欢迎向导页面 读取 Inno Setup 中的系统信息 我的意思是 RAM OS CPU user IP MAC地址 如果知道的话那就太好了 我想将此信息放入一个文本文档中 并将其保存在计算机上 我似乎根本无法在
  • Ubuntu 16.04 上的 SQLite 和 JSON1

    是否有适用于 Linux Ubuntu 的 SQLite 发行版是使用 JSON1 扩展编译的 SQLite JSON1 页面上的说明仅解释了如何在编译后加载扩展 我想避免离题 Ubuntu Xenial 附带 SQLite3 11 0 1
  • Angular 2 with jasmine:带有注入服务的测试组件

    我无法为我的 Angular 2 项目创建一个简单的 jasmine 测试 这就是我想做的 要测试的组件 基于服务 Component providers AccountService selector account templateUr
  • 为什么ARM说“链接寄存器支持快速叶函数调用”

    我最近遇到了链接寄存器和叶函数的概念 我从之前的 SO 读中了解到 LR 告诉代码之前在执行期间的位置 我还知道叶函数是位于函数调用层次结构末尾的函数 The ARM 维基百科页面说 https en wikipedia org wiki
  • 更改 TextView 颜色

    如何更改单个 TextView 的 R G B TextView 没有亮度属性 它们的前景色和背景色使用 ARGB 值设置 例如 0xff000000 表示不透明的黑色背景 0xffffffff 表示不透明的白色前景 要增加亮度 只需将 R
  • 使用超过 30m 前更新的时间戳进行拉取的查询无法正常工作

    我绞尽脑汁试图解决这个问题 一切似乎都很顺利 但它并没有按照我的预期工作 我有一个索引test index并附有以下文件 index test index type testType id AV33b VYUyX1XZAq7NTI scor
  • 使用 CSS 和 jQuery 的动态、表格式列表项行

    我有一个内容项列表 每个内容项都有设定的宽度但不同 可变 的高度 列表中的每个项目都会向左浮动 HTML 和 CSS 如下 ul li h3 Item One h3 img src one png p First item content
  • 开发人员应该提交 Go 生成的代码吗?

    我使用代码生成器插件根据 OpenAPI 规范生成服务器存根 我想知道是否应该将生成的代码提交给版本控制 一般来说 是的 推理很简单 如果我是您代码的下游用户 也就是说 我只想将您的库作为依赖项包含在内或构建您的应用程序 那么构建您的代码就
  • 使用 vb.net 将表脚本编写为 CREATE TO

    在 SQL Server 中 我可以创建一个与另一个表重复的表 并在其中设置所有约束 我可以在 SQL Server Management Studio 中使用脚本表作为 CREATE TO 来执行此操作 然后我可以在另一个数据库中运行该脚
  • Smalltalk ReferenceStream 对新实例变量有问题吗?

    在 Pharo Smalltalk 中 我使用 ReferenceStream 序列化对象列表 这是我要序列化的对象的类定义 Object subclass Task instanceVariableNames title notes li
  • 整合银行账户[已关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 是否有任何 API 可以将银行帐户集成到 NET 应用程序中 我希望为用户提供将银行对账单提取到我的软件
  • 动态铸造?

    我需要一种方法将对象转换为编译时未知的类型 像这样的东西 object obj public type of obj Obj get return obj set obj type of obj value 唯一知道的是 obj 是一个值类