问题标签 [virtual-table]

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 投票
1 回答
3421 浏览

sql-server - 表变量和虚拟表是一回事吗?

SQL Server 中的虚拟表和表变量是否相同?什么是虚拟表?为什么我们需要虚拟表,以及如何创建一个?

0 投票
1 回答
111 浏览

sql - 虚拟表自动生成的表有什么用

我正在使用 sql 查询进行一些调试,执行以下操作以创建虚拟表:

& 检查架构,其中显示了对创建的虚拟表的附加 3 个表引用。

任何人请解释:

  • fit_content/segments/segdir 的用途是什么,
  • 谁使用这些。
  • 使用目的肯定与搜索有关,但它们如何相互关联。
0 投票
5 回答
1871 浏览

c++ - 虚拟表和_vptr存储方案

有人可以解释这个不同类的虚拟表是如何存储在内存中的吗?当我们使用指针调用函数时,他们如何使用地址位置调用函数?我们可以使用类指针获得这些虚拟表内存分配大小吗?我想看看一个类的虚拟表使用了多少内存块。我怎么能看到它?

谢谢!提前

0 投票
1 回答
269 浏览

javascript - 按升序和降序日期排序

尝试按 desc 和/或 asc 按日期对我的不可变列表进行排序,但它并没有真正准确地工作,在对单词进行排序时它工作正常,但不是列表中的以下 Date 。使用 react virtualized 中的降序和升序值。如果有人能告诉我如何最好地解决这个问题,那将会很有帮助。或者如果没有,还有什么其他选择?

真的不明白为什么有些日期会如期而至吗?

0 投票
2 回答
107 浏览

c++ - 加载 .dll 时,实例指针与 vfptr 不同

所以,我在玩 Visual Studio 的测试套件,发现了一些有趣的东西:

我在地址上有一个 A 类的实例,比如说,0x0656a64c。然后当我查看变量时,它说它__vfptr指向0x077e7c0c

据我所知,一个类的虚拟表指针应该位于类实例的前 4 个字节(或 64 位应用程序上的 8 个字节),除非它是多重继承的情况(那么它只是第一个的偏移量)虚表地址)。

我观察到 Visual Studio 将我的测试编译成 .dll 并运行其测试工具动态加载 .dll。

这可能是导致地址差异的原因吗?

这是VS调试器的截图

地址差异

0 投票
0 回答
147 浏览

mongodb - MongoDB BI 连接器:如何在 select 语句中为变量赋值

我需要生成虚拟表并用日期值范围填充它。

以下查询通常在 MySql 中执行:

结果: 在此处输入图像描述

如何使用 MongoDB BI 连接器获得准确的结果?

问题是 ':=' 赋值语法不起作用。

mongosqld 开始于 localhost:3307

如果输入值为 startDate = "2000-01-01" endDate = "2000-01-05"

输出表应为: 在此处输入图像描述

0 投票
0 回答
139 浏览

scala - Scala覆盖的字段:虚拟表中也有覆盖的字段吗?

Scala覆盖的字段:虚拟表中也有覆盖的字段吗?

我是 Scala 的新手。从概念上讲,被覆盖的类方法在虚拟表中,但我不确定被覆盖的字段是否也在虚拟表中?

对于上面的代码片段,我的理解是方法分别m1class AB的虚拟表中,但我不确定字段x是否也在虚拟表中。

0 投票
1 回答
92 浏览

c++ - 为什么在运行时调用虚函数需要虚表?

我正在关注本教程,试图了解和背后的virtual table整个过程。pointervirtual functions in C++

不确定,当我有这样的代码时:

为什么我需要所有这些virtual table管理?为什么编译器根本不分配d1(或基,如果没有的话)的内存地址覆盖virtual function

我的意思是:如果它需要 D1functon1()地址或Base functon1()地址,它可以在编译时详细说明。当时就知道了。为什么稍后在运行时浪费时间和资源virtual tables

我错过了这一点。花哨的例子?

0 投票
2 回答
194 浏览

c++ - 找出 vptr 字段

我有几节课,我试图了解 vptr 和 vtable 在这种情况下是如何工作的。

我试图弄清楚运行以下实现后堆栈和堆应该如何:

据我了解,创建了 2 个 vptr:

  1. B::vpointer - 在堆栈上
  2. A::vpointer - 在堆上

它们是否具有相同的价值?(包含相同的地址?)这里有多少个 vtable?

0 投票
1 回答
459 浏览

c++ - 为什么gcc实现的VTT中有top_offset?

这是投票最多的答案中对VTT的详细描述。但是答案并没有解释为什么top-offsetVTT中有a。

down_cast从我的角度来看,当我们base指向derived指针时,编译器已经知道offset需要在编译时调整(当没有虚拟推导时),所以不需要top_offset在下面的情况下存储a:

在这种情况下,C 类型的对象的布局如下(数字假设为 32 位指针):

top_offset为什么在这种情况下VTT中有a ?我认为 top_offsetandvirtual base offset只需要在虚拟继承中。