LISTER FICHIERS ET RÉPERTOIRES (MULTIPLATEFORME)

shenron666 Messages postés 229 Date d'inscription dimanche 14 septembre 2003 Statut Membre Dernière intervention 20 août 2014 - 18 oct. 2011 à 11:50
cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 - 3 nov. 2011 à 12:41
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/53687-lister-fichiers-et-repertoires-multiplateforme

cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
3 nov. 2011 à 12:41
>> C'est pas parce qu'un truc est du C que le C++ est interdit,

On évite généralement de mélanger C et C++, même si c'est techniquement possible.

>> Imagine un programme don chaque fichier source fait plus de 500 lignes, si il y a aucun using namespace, c'est vide le bordel surtout si tu as 4 ou 5 namespace à utiliser.

Je suis au travail actuellement. J'ai près de 2000 fichiers C++, contenant parfois 3000 lignes. 0 using namespace !
C'est au contraire très bénéfique, et bien plus explicite. Puisque je sais au premier coup d'oeil si une collection est standard ou si c'est une réecriture personnalisé pour un besoin spécifique. De plus, plus un projet grossi plus les conflits potentiels augementent. J'ai eu pour projets d'incorporer une solution avec des using dégueux, au sein de notre solution principale. C'était un cauchemar, puisque le projet à incorporer avait pris la liberté de faire des collections personnalisées au nom de collection du système tout en éclatant les namespaces (via using).
Je ne vais pas réécrire mes raisons, mon post les décrit très bien. Libre à toi d'écouter les conseils des plus expérimentés. Ce n'est pas pour rien que tu trouveras ce genre de pratique déconseillé dans pas mal d'entreprise.
En revanche, ton codes contient une mauvaise pratique facilement évitable, et c'est dommage de montrer ça à un public de débutant.

>> as 4 ou 5 namespace à utiliser.
Alias ? Using simple à portée limité ? Ou simple problème de conception ?
cs_christophedlr Messages postés 267 Date d'inscription samedi 3 janvier 2004 Statut Membre Dernière intervention 23 août 2023 5
3 nov. 2011 à 12:28
C'est pas parce qu'un truc est du C que le C++ est interdit, première chose. Ensuite, les using namspace comme dit ton lien sont souvent mal utilisé, cela veut pas dire qu'il faut pas les utiliser bien au contraire. C'est pas toi qui va m'apprendre à utiliser cela. Imagine un programme don chaque fichier source fait plus de 500 lignes, si il y a aucun using namespace, c'est vide le bordel surtout si tu as 4 ou 5 namespace à utiliser.

En l'occurence ici, aucun risque d'un conflit car un seul et unique d'utiliser, donc je ne vois pas le problème.
cptpingu Messages postés 3837 Date d'inscription dimanche 12 décembre 2004 Statut Modérateur Dernière intervention 28 mars 2023 123
3 nov. 2011 à 12:22
Si c'est du C, écris le en C. Donc iostream => stdio.h, std::cout => printf.
Si c'est du C++, alors: Évite les "using namespace", voir: http://0217021.free.fr/portfolio/axel.berardino/articles/bon-usage-using-namespace
radinor Messages postés 12 Date d'inscription mercredi 11 mars 2009 Statut Membre Dernière intervention 24 octobre 2011
24 oct. 2011 à 20:06
bonjour,

pourrait-on avoir une version exécutable sous windows XP ou W7 ?
j'ai des gros problèmes de listes de répertoires avec VBA pour Excel à cause des permissions de fichiers que je ne sais pas intercepter et qui me plantent !
merci
cs_christophedlr Messages postés 267 Date d'inscription samedi 3 janvier 2004 Statut Membre Dernière intervention 23 août 2023 5
18 oct. 2011 à 13:22
Salut,

Le but ici été d'avoir quelque chose de portable sans devoir disposer d'une librairie supplémentaire. Cela dit, oui je sais pour Boost, j'en ai souvent entendu parlé. Il réglerait le problème pour les systèmes non conforme POSIX, cela dit les ordinateurs sous 98 sont de plus en plus rare, quant à XP je suis pas sur qu'il soit conforme POSIX par défaut mais j'avais entendu parlé du Windows PowerShell, programme officiel qui augmente les possibilités de la console et rend le système POSIX et d'après ce que j'ai entendu, l'utilisation de PowerShell est de plus en plus courant sous XP, donc à ce niveau là pas de soucis.

Mais oui Boost est un bon moyen d'avoir du parfaitement portable en effet ;)
shenron666 Messages postés 229 Date d'inscription dimanche 14 septembre 2003 Statut Membre Dernière intervention 20 août 2014
18 oct. 2011 à 11:50
tu peux regarder du côté de Boost::Filesystem
http://www.boost.org/doc/libs/1_47_0/libs/filesystem/v3/doc/index.htm
Rejoignez-nous