Então, em geral, getters podem ser const, pois não alteram o estado do objeto. Setters não devem ser const.
Os getters C++ devem ser const?
Isso retornará um bool, e garante que o estado lógico do seu objeto não será alterado. Neste caso não é necessário escrever const na frente do tipo de retorno. Não faz nenhum sentido retornar um const bool porque é uma cópia de qualquer maneira. Então fazer const é inútil.
As funções de acesso devem ter o modificador const?
Professores martelaram isso na minha cabeça quando eu estava na escola, colegas pularam minha garganta por isso em revisões de código, e está em praticamente todos os livros didáticos de C++ por aí: "accessor" (também conhecido como "selector" ou " getter") métodos devem ser marcados como const. Se não alterar ou alterar os dados, marque-o const.
Uma função pode ser const?
Uma função se torna const quando a palavra-chave const é usada na declaração da função A idéia das funções const não é permitir que elas modifiquem o objeto no qual são chamadas. Recomenda-se a prática de fazer o maior número possível de funções const para evitar alterações acidentais nos objetos.
É uma boa prática usar const?
const é uma variável de atribuição única. Raciocinar sobre uma variável const é mais fácil (em comparação com let) porque você sabe que uma variável const não será alterada. Uma boa prática ao escolher o tipo de declaração de variáveis é preferir const, caso contrário, use let.