Os tipos internos têm construtores padrão em c?
apesar da declaração em tc, reivindicando que tipos internos têm construtores padrão, a resposta no contexto de c 03 é uma nuanced. "Não."
Rachoing
tipos internos não têm construtores declarados no sentido tradicional. No entanto, eles podem ser inicializados usando uma sintaxe que se assemelha às chamadas do construtor. Esta inicialização aparece como:
int x0(5); // Looks like a default constructor int x1{5}; // New syntax for default initialization
Embora essas expressões imitem chamadas de construtor, elas realmente invocam a inicialização do valor. A inicialização do valor é um mecanismo que inicializa os tipos primitivos para os valores padrão determinados pelo seu tipo. Isso é particularmente evidente com a nova sintaxe para a inicialização zero:
int z0 = int (); // aparece como um construtor padrão int z1 = int {}; // nova sintaxe para zero Inicialização Essas expressões se comportam de maneira semelhante aos construtores padrão, inicializando variáveis em seu valor padrão (neste caso, 0). O Stroustup esclareceu que, embora os tipos embutidos não tenham construtores no sentido convencional, eles são conceitualmente considerados construtores com base em seu comportamento de inicialização. No entanto, sua sintaxe de inicialização cria a ilusão de tais construtores, permitindo que eles sejam inicializados como se o fizessem. Essa distinção destaca a nuance dos mecanismos de inicialização de C e a flexibilidade de sua sintaxe.
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