CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Une explication SVP

Vampire6
Vampire6
Niveau 5
20 juillet 2002 à 12:14:37

Voila, j´ai fait un tout petit programme sous Visual C++ (version introduction), mais le problème est le suivant.

Lorsque j´inclue les en-têtes avec la syntaxe n°1 j´obtiens des messages d´erreurs du genre la classe string n´a pas été déclarée, l´espace de noms n´existe pas etc, alors que si j´emploi la syntaxe n°2 le tout passe très bien.

Pourriez-vous m´expliquer pourquoi ?

Merci d´avance.

Syntaxe 1 Syntaxe 2

  1. include <iostream.h> | #include <iostream>
  2. include <string.h> | #include <string>
  3. include <conio.h> | #include <conio.h>

|
using namespace std; | using namespace std;
|
void main(void) | void main(void)
{ |
|
string moi; | string moi;
moi="AH AH AH"; | moi="AH AH AH";
cout<<moi; | cout<<moi;
getch(); | getch();
|
} |

Exood4Studios
Exood4Studios
Niveau 3
20 juillet 2002 à 12:42:38

Bah tout simplement parceque <string.h> n´a aucun rapport avec <string> . ..

<string.h> c´est la librairie standard de base du langage C pour les manip de chaine de caractères (strpcy, strcat etc...)
<string> vient de la librairie standard C++ (donc l´utilisation d´un type "string" est en fait un objet...)

regarde ton MSDN pour voir les détails de chaque librairie

Vampire6
Vampire6
Niveau 5
20 juillet 2002 à 18:37:09

Merci pour cette explication.
Il va falloir que je lise un peu mieux le MSDN.

Lightness1024
Lightness1024
Niveau 10
21 juillet 2002 à 16:59:39

moi je vous conseille de ne jamais utiliser les namespace ca sert a rien et c source de bugs.

GamerFou2
GamerFou2
Niveau 7
21 juillet 2002 à 17:41:39

Quand on sait programmer ya aucune raison de se planter avec les namespaces ... :)

Lightness1024
Lightness1024
Niveau 10
22 juillet 2002 à 12:41:48

qua

Lightness1024
Lightness1024
Niveau 10
22 juillet 2002 à 12:43:46

kèsikicé passé ? c koice formum a la con ou on appuie sur une autre touche k´une touche alphanumerique et ca envoie le message ! !!
bref poursuivons:

si on sait programmer on a pas besoin de namespace ! sauf dans un cas tres particulier et encore c´est parfaitement evitable et en particulier dans une petite fonctione comme ca ou la utilité = 0.1 (oui y´en a kan meme une pour eviter de tomber sur des noms deja definis dans les headers) mais franchement autant s´en passer !

GamerFou2
GamerFou2
Niveau 7
22 juillet 2002 à 12:47:01

Bah tu devrais savoir que de toute facon par défaut tu en as un déjà déclaré (toutes variables et fonctions gobales sont par défaut déclarées dans un namespace sans nom : )

Mais bon dans les gros projets ca peut servir, e ca sert d´ailleurs : )

C´est sur que pour faire des "hello world!" dans tous les sens c´est pas vraiment utile...

Lightness1024
Lightness1024
Niveau 10
23 juillet 2002 à 15:34:03

pkoi; il voulait créer une API ou un programme principal ? fo savoir...

Vampire6
Vampire6
Niveau 5
23 juillet 2002 à 16:15:35

Non je ne voulais pas faire une api, c´était simplement un petit programme pour faire un essai car dans un bouquin sur visual C++ il y avait tout le temps ce namespace STD.

Bon enfin je ne m´en servirai qu´en cas de besoin car j´ai pas envie qu´il surcharge mes programmes avec des classes ou des fonctions que je n´utiliserai pas.

En tout cas merci à tous pour vos explications.

Sous forums
  • Aide à l'achat Mac
  • Internet
  • Macintosh
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Steam Deck
  • Hardware
La vidéo du moment