问题标签 [virtual]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
8 回答
811 浏览

c# - 覆盖但不调用

如何在 C# 中声明一个应该被派生类覆盖(或可覆盖)的方法——甚至可能在你的程序集之外——但它应该只能从实际类中调用?

(即像 C++ 中的私有虚函数)

[编辑]正是我想要的:“这是一种修改我的行为的方法,但仍然不允许您直接调用此函数(因为调用它需要只有我的基类才能执行的神秘调用)”
private virtual

所以澄清一下:在 C# 中最好的表达是什么?

0 投票
3 回答
1445 浏览

iis - IIS 6.0 虚拟目录设置

我建立了一个网站,并在网站中创建了一个文件夹名称(文档)作为包含一些文档的虚拟目录。

因此 URL 是 xxxxxxyyyyzzzz.com/docs

问题是当我尝试访问 xxxxxxyyyyzzzz.com/docs/1.doc 时,需要进行身份验证。你能告诉我如何删除它并让任何用户访问这个文件夹有任何限制吗?

大卫

0 投票
1 回答
70561 浏览

c++ - 虚拟继承

“虚拟”继承是什么意思?

看了下面的代码,没看懂virtual下面上下文中关键字的含义:

0 投票
2 回答
625 浏览

c# - 为什么 Rhino.Mocks 和 Moq 说 Bar 是不可覆盖的成员?

有人可以解释为什么使用最新版本的 Moq 和 Rhino.Mocks 框架的测试都失败了,抱怨 Bar 不是虚拟/可覆盖的方法:

如果我将 Bar 方法声明为虚拟,则两个测试都会通过。我不明白为什么我必须将 Bar 声明为虚拟的。不是已经是虚拟的了吗?它来自界面。

0 投票
2 回答
6060 浏览

c++ - 钻石继承和纯虚函数

想象一下标准的钻石继承。A 类定义了纯虚函数 fx,B 类定义了 fx 的实现,C 类和 D 类对 fx 没有任何作用。当尝试在 D 类的实例上调用 fx 时,您将收到“模糊函数调用”错误,尽管 fx 只有一种实现。这可以通过 B 和 C 以虚拟方式从 A 继承来解决。这是解决问题的正确方法吗?虚拟继承究竟如何处理虚函数表的合并?

A--->B--->D

\--->C--------^

0 投票
6 回答
31453 浏览

c# - 虚函数在 C# 和 Java 中如何工作?

虚函数如何在 C# 和 Java 中工作?

它是使用类似于 C++ 的相同 vtable 和 vpointer 概念还是完全不同的东西?

0 投票
7 回答
38769 浏览

c++ - 来自构造函数的 C++ 虚函数

为什么下面的示例打印“0”以及必须更改什么才能按我的预期打印“1”?

0 投票
3 回答
666 浏览

delphi - 如何链接“并行”类层次结构?

我有一个小的类层次结构,其中每个类对应于某个 TComponent 后代(例如基类 TDefaultFrobber,其后代 TActionFrobber 和 TMenuItemFrobber,分别对应于 TComponent、TCustomAction 和 TMenuItem)。现在我想要一个工厂(?)函数是这样的:

我可以以某种方式重构它以使用虚拟函数或类似的东西而不是 if-else 级联或 RTTI 吗?

编辑:我现在的解决方案:

感谢 Cesar、Gamecat 和 mghie。

0 投票
5 回答
2044 浏览

memory - 虚拟内存

大多数关于虚拟内存的文献都指出,作为应用程序开发人员,了解虚拟内存可以帮助我利用其强大的功能。我参与在 Linux 上开发应用程序已有一段时间了,但在编写代码时并不关心虚拟内存的复杂性。我错过了什么吗?如果是这样,请阐明我如何利用虚拟内存的工作原理。否则,如果我对这个问题没有意义,请告诉我!

0 投票
7 回答
14238 浏览

c# - 将方法/属性标记为虚拟对性能有何影响?

问题如标题中所述:将方法/属性标记为虚拟的性能影响是什么?

注意 - 我假设虚拟方法在常见情况下不会被重载;我通常会在这里使用基类。