Je travaille avec gnump et avoir une fonction qui doit retourner mpz_t
. Je dois donc utiliser des pointeurs bruts pour renvoyer une valeur. J'alloue l'espace avec new
pour le pointeur et l'envoie en tant que paramètre dans ma fonction.GMP et pointeurs intelligents
Je pense qu'il est préférable d'utiliser des pointeurs intelligents. Mais je n'ai pas travaillé avec eux avant. J'ai lu le manuel, mais je ne comprends toujours pas comment utiliser correctement shared_ptr
pour renvoyer une variable d'une fonction.
shared_ptr<mpz_t> func()
{
mpz_t z;
mpz_init_set_str(z, "23423423423", 10);
shared_ptr<mpz_t> p /* Shall I allocate space with "new" or smth else?.. */
return p;
}
Je serais reconnaissant pour tout exemple.