您如何简单地解释类型转发?

2023-12-02

我正在准备 MCTS 70-536,阅读后this文章。我不确定我是否理解类型转发的概念。我发现文章中给出的步骤更加令人困惑。如果我复制要转发的类型的源代码并重新编译它,该怎么办?旧的 dll 和客户端会发生什么?


类型转发允许您在程序集之间重新定位类型。所以原来是这样TypeA in AssemblyA。通过应用类型转发,您可以结束TypeA in AssemblyB.

微妙之处在于已经编译好的代码没有看到变化 - 他们要求输入AssemblyA,运行时默默地为它们提供来自的类型AssemblyB。如果您有现有代码,这一点非常重要。

然而;new代码无法重新编译引用TypeA没有你参考AssemblyB.

So:

  • 老客户端不需要重新编译
  • 但是,您确实需要重建两者AssemblyA and AssemblyB在上面的例子中
  • 新代码(或任何重新编译的代码)现在必须引用AssemblyB(新的那一个)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

您如何简单地解释类型转发? 的相关文章

随机推荐

  • 如何使用 django-simple-history 存储 ManyToManyField 的历史记录。

    如何使用 django simple history 存储 ManyToManyField 的历史记录 我使用带有属性 m2m filds 的 HistoricalRecords 但它抛出错误 意外的关键字参数 m2m fields 我是
  • 增强 ggvis 轴

    我正在寻找增强图表的最佳方法 library dplyr library ggvis df lt data frame Year c 1954 2013 Count rep as integer c 1 3 4 2 15 df gt ggv
  • 使用 AppleScript 将 .rtf 文本复制到电子邮件正文中

    我有一个 AppleScript 应用程序 它可以创建一封电子邮件 在 Mail app 中 其中包含我通过对话框选择的选项中的附件 文本模板存储在 rtf格式 以便非程序员可以根据自己的意愿更改文本模板 我可以从以下地址创建电子邮件 tx
  • C++ 中并行向量的 find_first

    我有一个相当大的向量 一些向量成员并行地匹配某个条件 我想找到与条件匹配的第一个元素 我的问题与这个问题非常相似 tbb 并行查找第一个元素 但我没有tbb 检查条件非常繁琐 所以我无法依次对所有条件进行检查 这就是为什么我想并行运行它 我
  • php - 如何合并每个数组具有不同元素数的二维数组

    我有 2 组二维数组 我想合并成 1 个二维数组 但每个数组中的元素数量不相同 并且前 2 个元素相同 我不想重复它 这是它 第一个二维数组 Array 0 gt Array 0 gt 25 2 2013 1 gt 8 45 a m 2 g
  • Model View ViewModel / Knockout 解决什么问题? [关闭]

    Closed 这个问题需要多问focused 目前不接受答案 我在阅读某人的代码时遇到了 Knockout 和 MVVM 我对这两个主题都做了一些阅读 但我仍然对它们真正解决的问题感到困惑 很可能是因为我还没有构建足够大的应用程序来解决这个
  • 导入错误:没有名为 pandas 的模块

    我正在尝试用 Python 编写代码来获取 Twitter 数据 但没有收到 twython 错误 但我遇到了 Pandas 错误 我已经使用安装了 Pandaspip install pandas 但我仍然收到以下错误 我该如何修复它 F
  • ANTLR4 解析树简化

    有没有办法让 ANTLR4 自动删除生成的解析树中的冗余节点 更具体地说 我一直在尝试 GLSL 的语法 由于自动处理运算符优先级所需的规则转发 您最终会在解析树中得到长线性 表达式 序列 大多数生成的树节点只是 转发到下一个优先级 因此不
  • 如何更改图例的顺序

    我想改变图例的顺序 见图 我希望序列是 绿色和data2 蓝色和data3 黑色和data4 红色和data1 有人能给个demo吗 更改将图添加到图中的顺序 然后调用legend通常情况下 应该可以做到这一点 您也可以按如下方式进行 首先
  • 上传带有 Angular 材质和 Angular JS 的文件

    对于代码 我从中得到了灵感 https codepen io alexandergaziev pen JdVQQm 所以 对于 HTML 我这样做了 div class file input div div class file input
  • 使用C在eclipse中多重定义主要错误

    我正在尝试使用 Eclipse 中的 C 项目生成两个 exe 客户端和服务器 两者都有主要功能 因为他们是不同的前任 两者都使用通用的 confutils c 文件 如何解决主要问题的多重定义 我知道我们不能在一个项目中有两个电源 我的
  • 源中包含 < 和 > 的 XSLT 转换

    我有一个以下格式的输入 XML
  • 在 R 中重新编码多个变量

    我想在 R 中一次重新编码多个变量 这些变量位于更大的数据框中 以下是一些示例数据 z lt data frame A c 1 2 300 444 555 B c 555 444 300 2 1 C c 1 2 300 444 555 D
  • Angular UI Router - 如何在切换视图时保留视图

    我是 Angular 和 UI Router 的新手 Plunk http plnkr co edit 1wfyrGryfGG5RtXozPFY p preview Setup我有三个顶级应用程序导航按钮 主页 项目 帮助 他们使用 Ang
  • R.java 文件未创建

    我的 Android 应用程序中有 R java 文件 但我不知道 它是如何删除的 要再次创建它 我清理我的项目 并通过单击 构建项目 重建我的项目 我不知道是什么问题 它不会再次被创建 一般来说 每当我构建项目时它都会自动创建 如果您在更
  • firebase获取每个子项的子项的数据

    大家好 我是 firebase 的超级新手 我需要一些帮助 首先 我正在做的是一份清单 例如 刻度表包含一个项目列表 其中包含刻度日志 因此我设计的数据如下 清单 ticksheets JbN5ol2jGRtAOZ9ovrO auto ge
  • noscript 标签,如果未启用,我需要提供替代 html

    如果用户浏览器上未启用 JavaScript 是否可以用 HTML 替换 javascript 我知道我可以使用
  • 当以 C++03 为目标时,使用 std::basic_string 作为连续缓冲区是否合理?

    我知道在 C 03 中 从技术上讲std basic string模板不需要有连续的内存 然而 我很好奇现代编译器有多少实现实际上利用了这种自由 例如 如果有人想使用basic string要接收某些 C API 的结果 如下面的示例 分配
  • 是否可以从具有超时的输入流中读取?

    具体来说 问题是编写一个这样的方法 int maybeRead InputStream in long timeout 如果数据在 超时 毫秒内可用 则返回值与 in read 相同 否则返回 2 在该方法返回之前 任何生成的线程都必须退出
  • 您如何简单地解释类型转发?

    我正在准备 MCTS 70 536 阅读后this文章 我不确定我是否理解类型转发的概念 我发现文章中给出的步骤更加令人困惑 如果我复制要转发的类型的源代码并重新编译它 该怎么办 旧的 dll 和客户端会发生什么 类型转发允许您在程序集之间