Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Diogo Nunes

[Resolvido] Funcionamento alocador de memória Visual C++

Recommended Posts

Olá a todos!!

 

Bom pessoal, o título do tópico diz tudo. Queria saber se alguem sabe como funciona o alocador de memória do Visual Studio C++ 2008? Trabalho em uma empresa e estou em um projeto para escrever um alocador específico para uma atividade específica.

 

Espero que alguem ajude.

 

Desde já agradeço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Alocador de memória do visual studio?

Não entendi.

 

Especifique melhor, dê exemplos...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Alocador de memória do visual studio?

Não entendi.

 

Especifique melhor, dê exemplos...

 

Vou tentar explicar:

O alocador de memória usado na GLIBC é o malloc(Red Hat Enterprise Linux 5.4).

Queria saber qual alocador é usado no Visual Studio 2008 SP1? Não estou encontrando ou mesmo não estou sabendo fazer a pesquisa sobre o assunto.

 

Só queria uma ajuda pra resolver essa pendência.

 

[ ]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ahhhhhh

malloc não é o alocador de memória usado apenas no RedHat.

malloc é a função que aloca memória em C (linguagem de programação C).

Independentemente do compilador ou plataforma, o seguinte código em C é válido:

#include <stdlib.h>
#include <stdio.h>

int main()
{
int *p = (int*)malloc(sizeof(int));

    printf("Memoria alocada em: %p\n", p);
    free(p);
    return 0;
}

Em C++, existe algo semelhante, e não é exclusivo do compilador da microsoft (Visual Studio é a IDE, IDE é diferente de compilador)

Em C++ não existe uma função que aloca memória, mas sim um operador.

O operador 'new'.

E para desalocar memória é usado o operador 'delete' ou 'delete[]'.

O código acima pode ser escrito em C++ da seguinte forma:

#include <iostream>

int main()
{
int *p = new int;

    std::cout << "Memoria alocada em: " << std::hex << p << std::endl;
    delete p;
    return 0;
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.