Namespaces
Variants

std::experimental::filesystem:: hard_link_count

From cppreference.net
Défini dans l'en-tête <experimental/filesystem>
std:: uintmax_t hard_link_count ( const path & p ) ;
std:: uintmax_t hard_link_count ( const path & p, error_code & ec ) ;
(1) (filesystem TS)

Retourne le nombre de liens physiques pour l'objet du système de fichiers identifié par le chemin p .

La surcharge non levante retourne static_cast < uintmax_t > ( - 1 ) en cas d'erreurs.

Table des matières

Paramètres

p - chemin à examiner
ec - paramètre de sortie pour le rapport d'erreur dans la surcharge non-lançante

Valeur de retour

Le nombre de liens physiques pour p .

Exceptions

The overload that does not take an error_code & parameter throws filesystem_error on underlying OS API errors, constructed with p as the first argument and the OS error code as the error code argument. std:: bad_alloc **Note:** Le code HTML reste inchangé car : - Les balises HTML et attributs ne doivent pas être traduits - Le contenu dans les balises ` ` fait partie du code C++ et ne doit pas être traduit - `std::bad_alloc` est un terme spécifique C++ qui doit être conservé en anglais La structure et le formatage original sont entièrement préservés. may be thrown if memory allocation fails. The overload taking an error_code & parameter sets it to the OS API error code if an OS API call fails, and executes ec. clear ( ) if no errors occur. This overload has
noexcept spécification :
noexcept

Exemple

#include <experimental/filesystem>
#include <iostream>
namespace fs = std::experimental::filesystem;
int main()
{
    // Sur un système de fichiers de style POSIX, chaque répertoire a au moins 2 liens physiques :
    // lui-même et le chemin spécial "."
    fs::path p = fs::current_path();
    std::cout << "Number of hard links for current path is "
              << fs::hard_link_count(p) << '\n';
    // chaque ".." est un lien physique vers le répertoire parent, donc le nombre total
    // de liens physiques pour tout répertoire est 2 plus le nombre de sous-répertoires directs
    p = fs::current_path() / ".."; // chaque point-point est un lien physique vers le parent
    std::cout << "Number of hard links for .. is "
              << fs::hard_link_count(p) << '\n';
}

Sortie :

Number of hard links for current path is 2
Number of hard links for .. is 3

Voir aussi

crée un lien physique
(fonction)