TIPO EASURE EM C refere -se à técnica de ocultar algumas ou todas as informações de tipo sobre uma classe, semelhante a Boost.any. Aqui estão várias abordagens de apagamento de tipos:
as funções virtuais são uma técnica clássica em que você abata a implementação de uma classe dentro de uma hierarquia de classe baseada em interface. Essa abordagem é adotada por muitas bibliotecas de impulso, como boost.any e boost.shared_ptr, para ocultar tipos ou mecanismos de desalocação. com funções modeladas, enquanto armazenava o objeto real em um ponteiro vazio*. O Boost.Function utiliza essa técnica para ocultar o tipo real de um functor. sem recorrer a funções virtuais ou void* manipulação. Ele aproveita os modelos de função no construtor Shared_PTR para armazenar quaisquer dados e chamar adequadamente o destruidor correto no final. Apesar de sua simplicidade, essa abordagem oferece conveniência embalando o conceito tradicional de Erasure do tipo vazio*/ponteiro de função. , com a diferença primária estar no fornecimento de açúcar semântico.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3