Accueil Finances personnelles En construisant des tableaux constants en C ++ - des nuls

En construisant des tableaux constants en C ++ - des nuls

Vidéo: JavaScript Basics Tutorial 2024

Vidéo: JavaScript Basics Tutorial 2024
Anonim

Si vous avez un tableau et que vous ne voulez pas que son contenu change, vous pouvez en faire un tableau constant. Les lignes de code suivantes, trouvées dans l'exemple Array05, démontrent cette approche:

const int Permanent [5] = {1, 2, 3, 4, 5}; cout << permanent [1] << endl;

Ce tableau fonctionne comme n'importe quel autre tableau, sauf que vous ne pouvez pas changer les nombres à l'intérieur. Si vous ajoutez une ligne comme la ligne suivante, vous obtenez une erreur de compilation, car le compilateur est conscient des constantes:

Permanent [2] = 5;

Voici l'erreur que vous obtenez lorsque vous essayez ceci dans Code:: Blocks:

erreur: affectation de l'emplacement en lecture seule 'Permanent [2]'

Qu'en est-il d'un tableau constant de non-constantes? Peux-tu faire ça? Eh bien, parfois - en fonction du compilateur. Aussi horrible que le code suivant (trouvé dans l'exemple Array06) ressemble - et ce n'est pas la norme ANSI! - Vous êtes autorisé à le faire avec les anciennes versions des compilateurs gcc. (Microsoft Visual C ++ et Borland C ++ Builder ne l'autorisent pas, et le compilateur Code:: Blocks vous présente un message d'erreur error: assignment invalid assignment.)

int NonConstant [5] = {1, 2, 3, 4, 5}; int OtherList [5] = {10, 11, 12, 13, 14}; OtherList = NonConstant;

En d'autres termes, cette troisième ligne dit: "Oubliez ce que fait remarquer OtherList; au lieu de cela, faites-le pointer vers le premier tableau, {1, 2, 3, 4, 5}! "Maintenant, vous vraiment ne devriez pas écrire du code comme celui-ci (souvenez-vous, gardez les choses simples et compréhensibles), donc si vous voulez éviter ce genre de chose, vous pouvez le rendre constant:

< ! --3 ->
const int NonConstant [5] = {1, 2, 3, 4, 5}; const int OtherList [5] = {10, 11, 12, 13, 14}; OtherList = NonConstant;

Maintenant, quand le compilateur arrive à la troisième ligne, il vous donne une erreur:

erreur: affectation de la variable en lecture seule 'OtherList'

Mais vous remarquerez peut-être que la façon dont vous avez fait la constante tableau de la même manière que vous avez rendu ses éléments constants dans le code qui vient juste avant cet exemple. Oops! Tout ça c'est à propos de quoi? Il s'avère qu'il y a quelques règles.

La liste suivante décrit les règles, en détail, pour rendre les tableaux constants:

  • Si vous voulez faire un tableau constant, vous pouvez le précéder de son mot const. Lorsque vous le faites, le nom du tableau est constant et les éléments à l'intérieur du tableau sont aussi constants. Vous ne pouvez donc pas avoir un tableau constant avec des éléments non constants, ni un tableau non constant avec des éléments constants.

  • La notion de tableau non constant n'existe que dans gcc et n'est pas standard ANSI.

Si vous voulez vraiment être technique, la norme ANSI C ++ dit que lorsque vous mettez le mot const devant une déclaration de tableau, vous ne rendez pas le tableau constant; vous dites que le tableau ne contient que des constantes.

Pourtant, lorsque vous utilisez const de cette façon, la plupart des compilateurs rendent le tableau lui-même constant. Mais c'est bien. les gens ne devraient pas prendre un nom de tableau et le copier sur autre chose. Ce n'est pas un bon style de programmation, et c'est juste demander des bogues - ou, à tout le moins, de la confusion - plus tard.

En construisant des tableaux constants en C ++ - des nuls

Le choix des éditeurs

Installation des périphériques réseau Juniper dans un rack - mannequins

Installation des périphériques réseau Juniper dans un rack - mannequins

Première étape de l'utilisation de tout périphérique réseau implique l'installation du matériel et des logiciels nécessaires à son fonctionnement. Les périphériques qui exécutent le système d'exploitation Junos varient en taille et en forme: très petits (commutateurs avec seulement quelques ports fonctionnant sur un courant de bureau normal) ou massifs (routeurs centraux multi-rack nécessitant plusieurs installateurs expérimentés ...

Comment gérer les fichiers journaux des périphériques Junos - dummies

Comment gérer les fichiers journaux des périphériques Junos - dummies

Si vous avez créé des fichiers journaux volumineux types d'événements à différents types de fichiers pour la facilité d'utilisation, vous devez gérer ces fichiers. Par défaut, le logiciel Junos OS limite la taille des fichiers journaux à 128 Ko. Lorsque les événements sont consignés, lorsque la taille totale des messages dépasse 128 Ko, quelque chose ...

Le choix des éditeurs

Adolescents gais: sortir avec la famille et les amis - les mannequins

Adolescents gais: sortir avec la famille et les amis - les mannequins

Qui révèlent l'homosexualité n'est jamais facile - pour jeunes ou vieux - mais le processus peut être particulièrement difficile pour les adolescents, qui sont dépendants de leur famille et n'ont pas encore établi leur propre vie privée avec leur propre lieu de vie et un emploi pour fournir un soutien financier. En fait, les taux de suicide ...

Comment Implanon fonctionne comme contrôle des naissances - les nuls

Comment Implanon fonctionne comme contrôle des naissances - les nuls

Certaines femmes choisissent Implanon comme contraceptif parce qu'elles veulent un contraceptif Cela ne nécessite pas de maintenance quotidienne, ni même saisonnière, ni de stérilisation. Implanon est une bonne option pour ces femmes parce que le dispositif est implanté sous la peau du bras d'une femme et est efficace pendant jusqu'à trois ans. Avec ...

Comment la grossesse change votre corps et votre vie sexuelle - les nuls

Comment la grossesse change votre corps et votre vie sexuelle - les nuls

Peuvent certainement faire partie d'une vie sexuelle saine les neuf mois de grossesse. Cela dit, ce ne sera probablement plus pareil qu'auparavant. Le corps d'une femme change au cours de cette période, tout comme ses besoins. La meilleure façon d'avoir des rapports sexuels durant la grossesse est de comprendre comment le corps d'une femme change pendant ...

Le choix des éditeurs

Utiliser une structure de répertoires peu profonds pour de meilleurs résultats de moteur de recherche - mannequins

Utiliser une structure de répertoires peu profonds pour de meilleurs résultats de moteur de recherche - mannequins

Structure de répertoire pour votre site Web, il est important de ne pas aller trop loin - cela garantit que les moteurs de recherche peuvent plus facilement votre site et que les utilisateurs trouveront votre site plus accessible. La structure du répertoire fait référence à l'emplacement physique de vos fichiers dans les dossiers du site. Par exemple, ...

Comprendre les avantages des requêtes à longue queue pour le SEO - Les nuls

Comprendre les avantages des requêtes à longue queue pour le SEO - Les nuls

Stratégie de référencement pour attirer beaucoup de monde sur votre site. Mais vous ne voulez pas seulement de la quantité - vous voulez du trafic de qualité. Vous voulez attirer des visiteurs qui viennent et restent un moment et trouvent ce qu'ils recherchent sur votre site. Ce dont vous avez vraiment besoin, ce sont les clients. Dans le monde de ...

Services de syndication traditionnels et flux RSS pour le contenu SEO - dummies

Services de syndication traditionnels et flux RSS pour le contenu SEO - dummies

Certains services de syndication vendent du contenu pour votre site web. Ce contenu est souvent envoyé à des sites Web utilisant des flux RSS. La syndication de contenu n'a rien de nouveau. Une grande partie de ce que vous lisez dans votre journal local n'est pas écrite par le personnel du journal; Cela vient d'un service de syndication. En général, ce matériel devrait être meilleur que le contenu syndiqué gratuit. Cependant, ...