virtual-functions

virtual-functions

文章 0 浏览 4

从带有虚函数的基类继承的类上的 sizeof

对于以下代码片段。 /*This program demonstartes how a virtual table pointer * adds to a size of a class*/ class A{ }; class X{ public: void d…

囚我心虐我身 2024-08-03 08:53:32 6 0

PHP中虚函数的正确实现?

在我的工作场所(仅限 php),我们有一个数据库抽象的基类。当您想要向基础层添加新的数据库表时,您必须创建该基类的子类并重写一些方法来定义使用该…

明月夜 2024-08-02 19:41:38 8 0

派生类、具体类的 vtable

如果我有一个基类,并从中派生出 10 个不同的具体派生类,那么每个具体派生类是否都会有一个不同的 vtable?…

余厌 2024-07-30 02:57:13 5 0

如何避免从基构造函数调用虚拟方法

我在图书馆有一个抽象类。 我试图尽可能轻松地正确实现此类的派生。 问题是我需要通过三步过程来初始化对象:获取文件,执行一些中间步骤,然后使用该…

不疑不惑不回忆 2024-07-29 10:26:03 7 0

C#中虚函数的实际使用

C#中虚函数的实际用途是什么?…

以为你会在 2024-07-25 14:40:47 8 0

没有虚函数的命令模式 (C++)

出于性能原因,我使用 奇怪的重复模板模式以避免虚函数。 我有很多执行数百万次的小命令。 我正在尝试将其纳入命令模式。 我想将大量命令添加到队列中…

从﹋此江山别 2024-07-24 05:56:27 6 0

为什么构造函数中对虚拟成员函数的调用是非虚拟调用?

假设我有两个 C++ 类: class A { public: A() { fn(); } virtual void fn() { _n = 1; } int getn() { return _n; } protected: int _n; }; class B …

萌梦深 2024-07-23 07:07:05 16 0

为什么虚拟赋值的行为与相同签名的其他虚拟函数不同?

在尝试实现虚拟赋值运算符时,我以一个有趣的行为结束了。 这不是编译器故障,因为 g++ 4.1、4.3 和 VS 2005 具有相同的行为。 基本上,就实际执行的…

我不吻晚风 2024-07-22 21:16:08 11 0

为什么所有java方法都是隐式可重写的?

在 C++ 中,我必须显式指定“virtual”关键字以使成员函数“可重写”,因为当成员函数可重写时,会涉及创建虚拟表和 vpointers 的开销(因此每个成员…

染墨丶若流云 2024-07-19 02:33:12 8 0

抽象方法和虚方法有什么区别?

抽象方法和虚方法有什么区别? 在什么情况下建议使用抽象或虚拟方法? 哪一种是最好的方法?…

最偏执的依靠 2024-07-17 22:17:00 11 0

加速 gcc 中的虚拟函数调用

使用 gprof 分析我的 C++ 代码,我发现我的很大一部分时间都花在一遍又一遍地调用一个虚拟方法上。 该方法本身很短,如果它不是虚拟的,则可能会被内…

辞慾 2024-07-17 03:06:52 10 0

为什么 C 中没有虚拟构造函数?

为什么C++没有虚拟构造函数?…

王权女流氓 2024-07-16 22:42:11 8 0

赋值运算符适用于不同类型的对象吗?

class A { public: void operator=(const B &in); private: int a; }; class B { private: int c; } 对不起。 发生了错误。 赋值运算符有效吗? 或者…

两相知 2024-07-16 19:50:45 9 0

内联虚函数真的是无意义的吗?

当我收到代码审查评论说虚拟函数不需要内联时,我得到了这个问题。 我认为内联虚拟函数在直接在对象上调用函数的场景中会派上用场。 但我想到的反驳是…

方圜几里 2024-07-16 10:39:45 6 0

虚赋值运算符 C++

C++ 中的赋值运算符可以变为虚拟的。 为什么需要它? 我们可以让其他运营商也虚拟化吗?…

嘿哥们儿 2024-07-15 17:55:13 8 0
更多

推荐作者

苦中寻乐

文章 0 评论 0

lueluelue

文章 0 评论 0

嗼ふ静

文章 0 评论 0

王权女流氓

文章 0 评论 0

与花如笺

文章 0 评论 0

残酷

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文