@naccib dá merda se eu definir todas as minhas funções como const?
Also, descobri um uso do integer pointer :3c
E o que esse emoticon representa? :3c - É uma carinha fofa tomando um soco?
@cross @naccib Eu gosto da ideia que esse emoticon seja um carinha fofa tomando um soco, vou usar.
@cross Em que linguagem?
@naccib CÊ.
@naccib e eu to fazendo um header prozoutro usar, então tem que ser "fool-proof".

@naccib mas como assim?
Você tá rodando A() dentro da definição de `class A`.

( ._.)

@cross Erm... A() é o construtor?

@naccib ficaria bem mais fácil se você usasse:

```
class asd
{
};
```
Please.

@cross Não entendi, é porque eu esqueci o semi cólon no fim da classe?

@naccib não é por causa disso mesmo:
```
class asd {
}

class sad
{
}
```
Confunde.

@naccib (vírgula entre "não" e "é", essa é mais uma coisa que muda algumas coisas).
@cross Ah... isso é costume de programar no VI.

@naccib pera,
não precisa mais usar `new()`, né?

Isso muda algumas coisas.

@cross Você pode usar new se quiser, mas C++ tem construtores implícitos.
Você pode até fazer A a {
2
};, nesse caso, eu acho.

@naccib sobre o que a gente tava falando?

Deixa eu dar uma lida no código...

Por que `& user`?
Por que você usou `const` duas vezes no PegarId?

`como a função é marcada como const, isso vai dar erro porque funções const não podem
alterar valores da classe`
Bem, isso muda coisas, mas """classes""" nada significam.

Pera: https://gist.github.com/krossbow/7ba8486c797e6c0ce70a5197ccfe3110

@cross Não entendi teu código.
Você tá tentando retornar uma const unsigned int, mas tá retorna uma bool.
Você pode usar const nos dois argumentos, visto que você não muda o valor deles em nenhum momento.

Sobre o meu código, eu uso o & para evitar a cópia desnecessária da std::string, passando apenas uma referência para a original.

O primeiro const é para dizer que a função retorna uma int constante, o segundo é para dizer que a função é constante (não muda nenhum valor da classe.)

@naccib não, ela retorna uma uint mesmo, C, C, C.
@cross Não usam #include <stdbool.h> em C? Achei que usavam.

@cross Outra, recomendo você checar se o tamanho da substring é menor ou igual ao tamanho da string.

Se for maior, retorna false.
Se for igual, usa strcmp.
Se for menor, roda teu algorítimo mesmo.

Nesse gist que tu mandou, se o tamanho da substring for maior que o da string, vai dar nasal demons.

@naccib
"Se for maior, retorna false."
Faz sentido.

"Se for igual, usa strcmp."
Vou implementar :^^)

"Se for menor, roda teu algorítimo mesmo."
Faz sentido.

@cross Se isso for sobre segurança, você deve se preocupar mais com memória que com const.
@cross Todas? Não.
const é muito importante, ele ajuda você a proteger suas variáveis.

@naccib mas pera, pode usar variáveis const em loops (importantes para o projeto)?

(Não estou a fim de testar :I).

@cross Depender, você espera que essa variável mude de valor?
@naccib bem, para que o loop funcione, ela precisa mudar, né?