Passando objetos Const como argumento 'this': erro de desqualificação do qualificador
Em C , passando objetos const como argumentos 'this' para funções de membro pode resultar em erros "passar 'const xxx' como 'este' argumento da função membro descarta qualificadores". Isso ocorre porque o compilador considera a possibilidade de que funções de membro não const possam modificar o objeto, o que é proibido para objetos const.
Análise de problemas
No código fornecido , os objetos no conjunto são armazenados como const StudentT. Ao acessar as funções membro getId() e getName() dentro do loop, o compilador detecta esse problema, pois os objetos são const e as funções membro não são marcadas como const.
Solution
Para resolver o erro, as funções getId() e getName() devem ser tornadas const:
int getId() const { return id; } string getName() const { return name; }
Isso permite que as funções sejam chamadas em objetos const sem violar as regras const.
Notas adicionais
inline bool operator
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