Historique C ++, caractéristiques, types de données, exemples

3195
Philip Kelley

C++ est une version améliorée et étendue du langage de programmation C, qui a été développé par Stroustrup en 1979 dans le cadre de leur projet de doctorat. Stroustrup a conçu ce qu'il a appelé "C avec classes", qui a ensuite été appelé C ++, car il considérait que les langages de programmation existants avaient des limites et n'étaient pas les meilleurs pour les projets à grande échelle.

C'est pourquoi il a utilisé C pour développer le langage de programmation qu'il recherchait, car C était un langage efficace et rapide à travailler..

Source: pixabay.com

C ++ est un langage de programmation polyvalent qui est raffiné et puissant. Ce langage compilé de forme libre est le mieux adapté aux programmeurs de niveau intermédiaire.

Cependant, ceux qui souhaitent commencer à programmer avec C ++ constateront qu'ils peuvent rapidement apprendre des concepts de programmation qui les mèneront très loin dans leur carrière..

Il est compatible avec la programmation orientée objet, prenant toutes ses caractéristiques. Ces concepts rendent le langage C ++ différent et il est principalement utilisé pour développer des applications de manière simple et conceptualisée..

Index des articles

  • 1 Histoire
    • 1.1 Conception et mise en œuvre
    • 1.2 Version initiale
    • 1,3 C 2,0
    • 1.4 Version standardisée
    • 1.5 Mises à jour récentes
  • 2 Caractéristiques de C++
    • 2.1 Langue populaire
    • 2.2 Orienté objet
    • 2.3 Procédure
    • 2.4 Programmation structurée
    • 2.5 Gestion de la mémoire
    • 2.6 Pointeurs
    • 2.7 Langue compilée
  • 3 types de données en C++
    • 3.1 - Primaire
    • 3.2 - Secondaire
    • 3.3 - Défini par l'utilisateur
  • 4 À quoi sert le C ++? Applications
    • 4.1 Applications
    • 4.2 Systèmes d'exploitation
    • 4.3 Compilateurs
    • 4.4 Jeux
    • 4.5 Navigateurs Web
    • 4.6 Internet des objets
    • 4.7 Systèmes cloud / distribués
    • 4.8 Accès aux bases de données
  • 5 exemples
    • 5.1 Bibliothèques
  • 6 avantages
    • 6.1 Vitesse
    • 6.2 À proximité du matériel
    • 6.3 Efficacité
    • 6.4 Liberté de choisir les styles de programmation
    • 6.5 Capacité à décomposer des problèmes complexes
    • 6.6 Capacité de détecter les erreurs avant l'exécution
  • 7 Inconvénients
    • 7.1 Utilisation de pointeurs
    • 7.2 Problèmes de sécurité
    • 7.3 Absence de ramasse-miettes
    • 7.4 Absence de fil
    • 7.5 Programmes compilés
    • 7.6 Peut être complexe
  • 8 Références

Histoire

Conception et mise en œuvre

C ++ a été conçu et implémenté en 1980 par Bjarne Stroustrup chez AT&T Bell Labs, fusionnant à merveille les concepts de programmation procédurale et orientée objet..

Dans le langage C, l'opérateur ++ est utilisé pour incrémenter une variable, manifestant ainsi l'idée de Stroustrup que C ++ était la prochaine génération du langage C.

Première version

C ++ est sorti en 1985 pour la première fois sur le marché. En 1986, Stroustrup a publié son célèbre livre intitulé Le langage de programmation C++, devenir le manuel de référence des langues.

C 2.0

La version la plus importante de C ++ était C 2.0 en 1989, documentée par Ellis et Stroustrup dans Manuel de référence annoté de C++. C'était un langage totalement orienté objet.

Version standardisée

La première version normalisée, C ++ 98, a été publiée en 1998. Cette norme internationale pour C ++ a été développée par l'American National Standards Institute (ANSI) et l'International Standards Organization (ISO).

En 2003, la norme C ++ 03 suivante a été publiée dans le but de corriger les erreurs identifiées dans C ++ 98 et de garantir une meilleure portabilité et cohérence du langage.

Mises à jour récentes

La prochaine mise à jour majeure du langage est arrivée en 2011 et s'appelait C ++ 11. Plusieurs fonctionnalités ont été ajoutées pour améliorer ses performances d'exécution..

Ensuite, C ++ 14 a été publié, où des améliorations ont été apportées et des bogues C ++ 11. La prochaine version publiée en 2017 était C ++ 17, qui a plusieurs nouvelles fonctionnalités et une bibliothèque standard beaucoup plus étendue..

Caractéristiques de C++

Langue populaire

C ++ est largement utilisé par les développeurs, principalement dans les applications. Il contient toutes les parties importantes, telles qu'un langage central qui fournit tous les blocs de développement requis, tels que des variables, des types de données, des littéraux, etc..

C'est le quatrième langage de programmation le plus populaire, selon l'index de la communauté de programmation TIOBE.

Les utilisations de C ++ en font le langage le plus pratique, en raison de ses caractéristiques. C'est le premier langage de démarrage pour tout développeur qui souhaite travailler avec des langages de programmation. Il est facile à apprendre car il s'agit d'un langage purement conceptuel.

Sa syntaxe est très simple, ce qui la rend facile à écrire, et les erreurs peuvent être facilement répliquées. Avant d'utiliser tout autre langage, les programmeurs ont préféré apprendre d'abord le C ++, puis utiliser d'autres langages..

Cependant, la plupart des développeurs essaient de s'en tenir au C ++ en raison de sa grande variété d'utilisation et de sa compatibilité avec plusieurs plates-formes et logiciels..

Orienté objet

La principale mise à niveau de C vers C ++ est la programmation orientée objet. Cela signifie que l'accent est mis sur les "objets" et la manipulation autour de ces objets..

Suivre les concepts de polymorphisme, d'héritage, d'encapsulation et d'abstraction, facilitant le développement et la maintenance.

De procédure

C ++ prend en charge le concept de procédures et de sous-programmes, qui renferment des segments de code dans des blocs réutilisables, qui peuvent être «appelés» pour effectuer des tâches individuelles.

Les procédures et sous-routines sont appelées fonctions en C ++. Une fonction peut prendre zéro ou plusieurs paramètres et renvoyer zéro ou une valeur.

Programmation structurée

Le code en C ++ est modulaire, avec le support de fonctions, de classes et d'objets, les modules étant librement couplés.

Les instructions de contrôle de flux en C ++ sont similaires à celles trouvées dans de nombreux autres langages de programmation structurés. Ce sont if-else pour implémenter la logique de décision, et for, while et do-while pour implémenter des itérations ou des boucles..

Gestion de la mémoire

C ++ prend en charge l'allocation de mémoire dynamique. Ainsi, vous pouvez libérer la mémoire allouée à tout moment.

Pointeurs

Ce sont des variables qui stockent l'adresse d'une autre variable. Le pointeur pointe vers l'emplacement mémoire d'une variable. C ++ prend en charge des pointeurs pour fournir des solutions à de nombreux problèmes nécessitant un accès à l'emplacement mémoire.

Langage compilé

Avant de pouvoir être exécuté, un programme C ++ doit être traduit dans les instructions natives de la machine cible par un programme appelé compilateur. Sans compilation, aucun programme C ++ ne peut s'exécuter. Le compilateur compile le programme C ++ afin qu'il puisse être exécuté ultérieurement.

Types de données en C++

- Primaire

Int

Il est utilisé pour stocker des nombres entiers. La mémoire qu'il occupe dépend du compilateur (32 ou 64 bits). Occupe 4 octets de mémoire lorsque vous travaillez avec un compilateur 32 bits.

Flotter

Il est utilisé pour stocker des fractions jusqu'à 7 chiffres décimaux. Il est connu sous le nom de type à virgule flottante à simple précision. Occupe 4 octets de mémoire.

Carboniser

Il est utilisé pour stocker un ensemble de tous les caractères. Il peut inclure des lettres de l'alphabet, des chiffres et également des caractères spéciaux. Il occupe 1 octet de mémoire, étant la plus petite unité adressable d'une machine.

Double

Il est utilisé pour stocker des fractions de 15 à 16 chiffres décimaux maximum. Généralement appelé type virgule flottante double précision.

Vide (nul)

Indique zéro ou aucune valeur de retour. Généralement utilisé pour affecter la valeur nulle lors de la déclaration d'une fonction.

Booléen

Ce type de données fait référence à une valeur booléenne ou logique. Cela peut prendre la valeur de vrai ou faux.

- Secondaire

Arrangements

C'est un ensemble de données qui ont le même type de données, auquel on accède via un nom commun.

Pointeurs

Ce sont essentiellement des variables utilisées pour stocker l'adresse mémoire d'une autre variable.

Caractéristiques

C'est un groupe de phrases qui exécutent une tâche spécifique. Les fonctions sont des bibliothèques intégrées ou définies par l'utilisateur.

- Défini par l'utilisateur

Structures

C'est un type de données dans lequel une collection de différents types de données peut être créée et accessible via un objet.

syndicat

Offre la possibilité de stocker différents types de données dans le même emplacement mémoire.

À quoi sert le C ++? Applications

Applications

De nombreuses applications sur les systèmes Adobe sont développées en C ++, telles qu'Illustrator, Photoshop, Adobe Premiere et Image Ready.

Systèmes d'exploitation

C ++ est utilisé dans tous les principaux systèmes d'exploitation, tels que Linux, Windows et macOS, car il s'agit d'un langage de programmation de bas niveau.

Compilateurs

La plupart des compilateurs sont écrits en langage C ++. Aussi les compilateurs qui sont utilisés pour compiler d'autres langages, tels que C #, Java, etc..

Jeux

Il sert à éliminer la complexité des jeux 3D, aidant à optimiser les ressources. De plus, il est compatible avec l'option multijoueur dans les réseaux.

Navigateurs Web

Il permet une exécution et une représentation rapides des graphiques, ce qui est essentiel pour les utilisateurs actuels, qui exigent un contenu pouvant apparaître rapidement dans les navigateurs Web. C ++ a été utilisé pour rendre les navigateurs Internet Google Chrome et Mozilla Firefox.

Internet des objets

Divers produits de l'Internet des objets, tels que les montres intelligentes, les voitures, les machines à laver, les routeurs et les commutateurs, utilisent C ++ car ils nécessitent un code aussi proche que possible du matériel..

Cloud / Systèmes distribués

Il est utilisé dans le cloud dans les systèmes de stockage et les systèmes distribués, où les systèmes de fichiers évolutifs doivent travailler en étroite collaboration avec le matériel et la compatibilité avec différentes machines est également essentielle..

Accès aux bases de données

Il est utilisé pour développer un logiciel de base de données open source. Un logiciel d'administration de base de données très populaire utilisé dans les organisations, MySQL, est écrit en C ++ grâce aux avantages qu'il offre.

Il existe d'autres applications basées sur l'accès aux logiciels de base de données, à savoir Wikipédia, Yahoo, YouTube, Quora, etc..

Exemples

Ce programme reçoit un entier positif de l'utilisateur et le stocke dans la variable n. Ensuite, la boucle for est exécutée, qui vérifie si le nombre saisi est parfaitement divisible par i ou non.

La boucle for commence avec une valeur initiale de i égale à 2, augmentant la valeur de i à chaque itération. Si le nombre saisi par l'utilisateur est parfaitement divisible par i, isPrime est mis à false et le nombre ne sera pas un nombre premier.

Cependant, si le nombre n'est pas parfaitement divisible par i jusqu'à ce que la condition de test i <= n / 2 sea verdadera significa que solo es divisible entre 1 y ese mismo número. Entonces, el número dado es un número primo.

Bibliothèques

Les développeurs ont accès à de nombreuses fonctions intégrées fournies par le langage C ++. Cela permet de gagner du temps et d'accélérer le développement. Certains des fichiers d'en-tête C ++ avec leurs fonctionnalités fournies sont:

- iomanip: contient des gestionnaires de flux qui mettent en forme les flux de données.

- iostream: contient les fonctions d'entrée et de sortie standard.

- cstdlib: contient la fonction de conversion des nombres en texte et vice versa,

- cmath - Contient les fonctions de la bibliothèque mathématique, l'allocation de mémoire, les nombres aléatoires et diverses autres fonctions utilitaires.

- fstream: contient des fonctions qui effectuent l'entrée et la sortie de fichiers sur le disque.

- ctime: contient la fonction permettant de gérer l'heure et la date.

- mémoire: contient les classes et les fonctions utilisées par la bibliothèque standard C ++ pour allouer de la mémoire.

avantage

Rapidité

Puisque C ++ est une version étendue de C, qui est un langage de programmation de bas niveau, c'est l'un des langages les plus rapides disponibles. Cela le rend utile dans les domaines où les performances requises sont essentielles..

Proche du matériel

C ++ est l'un des langages de programmation les plus proches du matériel. Ceci est très avantageux dans les espaces où le logiciel doit avoir une relation étroite avec le matériel afin d'effectuer efficacement un support de bas niveau..

Efficacité

C ++ dispose d'une bibliothèque standard de modèles qui peuvent être largement utilisés lors du codage. Ces bibliothèques fournissent des algorithmes efficaces qui permettent au programmeur de gagner du temps et des efforts qui seraient autrement gaspillés en créant du code..

Liberté de choisir les styles de programmation

C ++ prend en charge environ sept styles de codage différents, ce qui en fait un langage de programmation multimodèle. Ainsi, vous pouvez sélectionner un style qui convient à un cas d'utilisation particulier, sans avoir à utiliser d'objets.

Capacité à résoudre des problèmes complexes

C ++ peut résoudre des problèmes complexes de manière intuitive en créant des objets. De plus, les fonctions C ++ vous permettent de diviser votre code en blocs de code clairs, faciles à comprendre et faciles à tester et à modifier..

Capacité à détecter les erreurs avant l'exécution

C ++ a un type statique, ce qui signifie que le compilateur ne fait aucune hypothèse sur ce que le programmeur écrit. L'avantage est que le compilateur peut détecter les erreurs et les échecs avant l'exécution, ce qui peut gagner du temps à long terme.

Désavantages

Utilisation de pointeurs

Les pointeurs sont un concept relativement difficile à comprendre et consomment également beaucoup de mémoire. Une mauvaise utilisation du pointeur peut provoquer une panne ou un comportement anormal du système.

Un problème important est lorsque les données pointent de la même manière à partir de deux points de départ différents, provoquant un problème important, générant des problèmes confus au sein du codage.

Les problèmes de sécurité

Bien que la programmation orientée objet offre une grande sécurité aux données traitées, il existe encore des problèmes de sécurité dus à la disponibilité des fonctions amis, des variables globales et des pointeurs..

Pas de ramasse-miettes

C ++ donne à l'utilisateur un contrôle complet de la gestion de la mémoire de l'ordinateur. Il n'a pas la fonction d'un garbage collector pour filtrer automatiquement les données inutiles et ne prend donc pas en charge l'allocation de mémoire dynamique.

Absence de fil

C ++ ne prend pas en charge les threads intégrés. Le concept de thread est relativement nouveau en C ++, car il n'existait pas à l'origine. Maintenant, C ++ est capable de prendre en charge les fonctions lambda.

Programmes compilés

En tant que langage compilé, les fichiers exécutables produits par le compilateur à partir du code source ne sont pas portables et ne fonctionneront que sur la plate-forme cible (matériel plus système d'exploitation) pour laquelle ils ont été compilés, ou sur une plate-forme binaire compatible..

Peut être complexe

Le C ++ peut être complexe, car il autorise les classes, qui sont des fonctions portant le même nom. Par conséquent, un système de gestion des symboles doit être utilisé. De plus, il est complexe pour un très grand programme de haut niveau. C ++ est couramment utilisé pour les applications spécifiques à la plate-forme.

Les références

  1. Simplilearn (2020). Programmation C ++ pour les débutants: histoire, avantages et applications. Tiré de: simplilearn.com.
  2. Educba (2020). Utilisations de C ++ dans le monde réel. Tiré de: educba.com.
  3. Dmitrii Rassokhin (2020). Le langage de programmation C ++ en cheminformatique et en chimie computationnelle. Journal of Cheminformatics. Tiré de: jcheminf.biomedcentral.com.
  4. Edureka! (2020). Quelles sont les 10 principales fonctionnalités de C ++? Tiré de: edureka.co.
  5. Aman Goel (2020). Langage C ++: fonctionnalités, utilisations, applications et avantages. Pirater. Tiré de: hackr.io.
  6. Steemit (2020). C ++: apprenez à coder. Histoire, avantages, inconvénients du langage C ++. Tiré de: steemit.com.
  7. Flair de données (2019). Apprenez les types de données en C et C ++ avec un exemple en seulement 4 minutes. Tiré de: data-flair.training.

Personne n'a encore commenté ce post.