Resultados da pesquisa a pedido "vtable"

4 a resposta

Tabela virtual C ++

Eu li muitas pessoas escrevendo "existe uma tabela virtual para uma classe que possui uma função virtual declarada". Minha pergunta é: existe uma vtable apenas para uma classe que possui uma função virtual ou também existe para classes derivadas ...

1 a resposta

Como a exclusão de um ponteiro é detectada usando conversão dinâmica

Como mostradoaqui [http://www.devx.com/tips/Tip/28143], pode-se usardynamic_cast para detectar um ponteiro excluído: #include <iostream> using namespace std; class A { public: A() {} virtual ~A() {} }; class B : public A { public: B() {} }; int ...

3 a resposta

Tabelas de métodos virtuais

Ao discutir classes seladas, o termo "tabela de funções virtuais" é mencionado com bastante frequência. O que exatamente é isso? Eu li sobre uma tabela de métodos há um tempo atrás (também não me lembro da finalidade do objetivo) e uma pesquisa ...

2 a resposta

vtable na classe polimórfica de C ++ usando gdb [duplicado]

Esta pergunta já tem uma resposta aqui: Imprimir vtables em C ++ usando o GDB [/questions/6191678/print-c-vtables-using-gdb] 5 respostasComo exibir vtable usando um ponteiro para basear o objeto de classe com funções virtuais?

3 a resposta

Por que as funções virtuais não podem usar a dedução de tipo de retorno?

n3797 [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3797.pdf]diz: § 7.1.6.4/14: Uma função declarada com um tipo de retorno que usa um tipo de espaço reservado não deve ser virtual (10.3). Portanto, o seguinte programa está mal ...

1 a resposta

Existe alguma maneira de despejar o layout da classe de um programa compilado g ++

Ao compilar com g ++, -fdump-class-hierarchy exporta as vtables do programa em um formato (mais ou menos) legível por humanos. No entanto, o arquivo resultante contém apenas informações sobre a vtable, masnão sobre o layout da classe em si. Eu ...

0 a resposta

Eficiência da função virtual e a palavra-chave 'final'

Considere um programa que tenha uma classeFoo contendo uma funçãoFoo::fn declarado assim: virtual void fn();e uma subclasse deFoo chamadoBar. Will declarandoBar::fn como isso: virtual void fn() override final;causar chamadas parafn noBar ou ...

0 a resposta

Deslocamentos do método COM no Delphi

No Delphi, como descubro o endereço de um método COM? Eu posso codificar as compensações //0 is the offset of the QueryInterface method p := TPonterArray(pointer(SomeInterface)^)[0];mas eu preferiria usar nomes simbólicos. O seguinte obviamente ...

2 a resposta

Quantos vptr terá um objeto de classe (usa herança única / múltipla)?

Quantos vptrs geralmente são necessários para um objeto cujo clas (filho) possui herança única com uma classe base que herda múltiplos de base1 e base2. Qual é a estratégia para identificar quantos vptrs um objeto forneceu que possui ...

1 a resposta

Os tipos de POD C ++ têm RTTI?

Pelo que entendi como o RTTI é implementado em vários compiladores C ++ (como o GCC), um ponteiro para otype_info os dados são armazenados novtable dados de cada classe. E também como ...