Maison > développement back-end > C++ > le corps du texte

Pourquoi `std::shared_ptr` n'a-t-il pas de spécialisation pour les tableaux en C ?

DDD
Libérer: 2024-11-20 16:18:16
original
791 Les gens l'ont consulté

Why Doesn't `std::shared_ptr` Have a Specialization for Arrays in C  ?

Spécialisation de std::shared_ptr

En C, std::unique_ptr a une spécialisation de modèle pour la gestion des tableaux , qui appelle de manière appropriée delete[] dans son destructeur. Cependant, une telle spécialisation n'existe pas pour std::shared_ptr.

Pourquoi l'absence ?

Au départ, l'oubli était probablement dû à des contraintes de temps, car le LWG (C comité) avait de nombreuses autres questions urgentes. Cependant, l'absence de proposition formelle a également joué un rôle.

Développements récents

Des discussions informelles ont ramené la question au premier plan et des prototypes ont été mis en œuvre. Cependant, une proposition formelle est toujours en attente. Certains membres du LWG pensent que la prise en charge des tableaux pour std::shared_ptr serait un ajout précieux.

Statut actuel

À partir de C 14, il n'y a pas de spécialisation intégrée pour std::shared_ptr. Pour gérer les tableaux, il faut fournir un suppresseur personnalisé qui appelle delete[].

Mise à jour

En 2014, un projet de spécification technique (TS) a été proposé pour ajouter un tableau prise en charge de std :: shared_ptr. Cette proposition a été mise en œuvre dans C 17.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal