Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Não entendi bem o que são ponteiros em C++

Eu estava aqui praticando criando códigos em C++ em relação aos cursos que eu ando vendo aqui, porém nunca entendi do por que usar os ponteiros e referencias de memoria, elas pegam o valor da variável? além disso eu sei que elas são importantes para o perfomace do nosso programa porém não sei bem como utiliza-las...

esta aqui um exemplo BEM básico de pelo que eu entendi.

#include <iostream>

int main() {
    int y = 5;
    int* x = &y;

    std::cout << x;
}
1 resposta
solução!

Olá Rafinhamandrade, tudo bem?

Ponteiros em C++ são uma parte fundamental da linguagem e podem ser um pouco confusos no início. Vamos tentar esclarecer isso.

Um ponteiro é uma variável que armazena o endereço de memória de outro objeto12. Em outras palavras, um ponteiro “aponta” para a localização de um valor em memória. Isso é útil por várias razões:

Alocação Dinâmica de Memória: Ponteiros permitem que você aloque memória dinamicamente durante a execução do programa. Isso é útil quando você não sabe de antemão quanto de memória vai precisar. Passagem por Referência: Quando você passa uma variável para uma função em C++, o padrão é que a função receba uma cópia do valor (passagem por valor). No entanto, às vezes você quer que a função seja capaz de modificar a variável original, não apenas a cópia. Isso é possível com ponteiros (ou referências). Estruturas de Dados Complexas: Ponteiros são usados para criar estruturas de dados complexas como listas ligadas, árvores, grafos etc. No seu exemplo, y é uma variável que armazena o valor 5, e x é um ponteiro que armazena o endereço de memória de y. Quando você faz std::cout << x;, está imprimindo o endereço de memória de y, não o valor de y. Se você quiser imprimir o valor de y usando o ponteiro x, você pode usar o operador de desreferência * assim: std::cout << *x;.

Espero que isso ajude! Se você tiver mais perguntas, fique à vontade para perguntar.