Olá colegas!
estou estudando ponteiros e me surgiu uma duvida com relação a alocação dinâmica de memora.
tipo, eu sei o que o calloc, malloc, new fazem, e também sei que calloc e malloc são da biblioteca do C, porém
qual seria o melhor desses 3 para se fazer alocação dinâmica?
fiz um programinha basico utilizando o new, porém gostaria de saber dos programadores mais experientes do que eu aqui no forum qual desses é melhor pra se trabalhar em C++ (calloc, malloc ou new) e o que muda no desempenho de um para o outro.
abaixo segue o codigo que eu fiz, para aplicação do estudo de ponteiros.
#include <iostream>
#include <new>
using namespace std;
/*Função para calcular a media aritmetica simples das notas contidas
em um vetor de tamanho passado pelo usuario
*/
float meida (float *vetor, int n)
{
float media_notas = 0;
for (int i = 0; i < n; i++)
{
media_notas += vetor[i];
}
return media_notas;
}
/*
programa que solicita um numero 'n' e entao cria um vetor de n notas e calcula
a media aritimetica das notas
*/
int main()
{
int tamanho = 0;
float *notas = NULL;
cout <<" Informe a quantidade de notas"<<endl;
cin >>tamanho;
notas = new float[tamanho];
cout <<" Entre com as notas"<<endl;
for (int i = 0; i < tamanho; i++)
{
cout <<i+1<<"ª Nota"<<endl;
cin >>notas[i];
}
cout << meida(notas,tamanho);
//Deleta o vetor e libera a memoria alocada por ele.
delete []notas;
return 0;
}
Desde ja agradeço pelo esclarecimento!!!