Resultados da pesquisa a pedido "virtual-inheritance"
compreender o vptr na herança múltipla?
Estou tentando entender a declaração no livro efetivo em c ++. A seguir, é apresentado o diagrama de herança para herança múltipl Agora, o livro diz que é necessária memória separada em cada classe para o vptr. Também faz a seguinte ...
herança virtual é necessária para exceçõe
Entendo a necessidade de herança virtual ao usar herança múltipla - ele resolve o Problema do Diamante Dreade Mas e se eu não estiver usando herança múltipla? Existe alguma necessidade de herança virtua Parece que me lembro de ouvir que era ...
Downcast em uma hierarquia de diamantes
Por quêstatic_cast não pode fazer downcast de uma base virtual? struct A {}; struct B : public virtual A {}; struct C : public virtual A {}; struct D : public B, public C {}; int main() { D d; A& a = d; D* p = static_cast<D*>(&a); //error } g ++ ...
unções virtuais estáticas em c ++
Tenho uma classe base e uma derivada e desejo alterar as funções base, mantendo-as estáticas, pois devem ser passadas para outras funções como estática Como eu posso fazer isso
omo a herança virtual C ++ é implementada nos compiladore
Como os compiladores implementam a herança virtua No código a seguir: class A { public: A(int) {} }; class B : public virtual A { public: B() : A(1) {} }; class C : public B { public: C() : A(3), B() {} };Um compilador gera duas instâncias ...
Por que o static_cast não pode ser usado para diminuir a conversão quando a herança virtual está envolvida?
Considere o seguinte código: struct Base {}; struct Derived : public virtual Base {}; void f() { Base* b = new Derived; Derived* d = static_cast<Derived*>(b); }Isso é proibido pela norma [n3290: 5.2.9/2]) para que o código não seja compilado, ...
amanhos @Class com herança virtual em C ++
#include<iostream> using namespace std; class abc { int a; }; class xyz : public virtual abc { int b; }; int main() { abc obj; xyz obj1; cout<<endl<<sizeof(obj); cout<<endl<<sizeof(obj1); return 0; } As respostas seriam dependentes do compilador, ...
C ++ construtores / destruidores da classe base abstrata - correção geral
Recently Eu sou burro como desenvolvedor, então eu mergulhei, peguei um livro em C ++ e aprendi a fazer as coisas corretamente. Na minha cabeça, eu sei o que gostaria de fazer. Eu efetivamente quero umInterface que, quando herdado, deve ser ...
erança virtual e vtable vazia na classe ba
Existe este código: #include <iostream> class Base { int x; }; class Derived : virtual public Base { int y; }; int main() { std::cout << sizeof(Derived) << std::endl; // prints 12 return 0; } Li que quando alguma classe é virtualmente herdada, ...
Por que o construtor Default é chamado de herança virtua
Não entendo por que, no código a seguir, quando instanciamos um objeto do tipodaughter, o padrãograndmother() construtor é chamado? Eu pensei que ograndmother(int) construtor deve ser chamado (para seguir a especificação do meumother construtor ...