OVH Cloud OVH Cloud

namespace

27 réponses
Avatar
Guillaume Gourdin
Bonjour !

VC6 ne semble pas accepter les noms de namespace commençant par un chiffre.
Est-ce normal ou est-ce un bug ?

10 réponses

1 2 3
Avatar
Jean-Marc Molina
Logiquement un nom n'a pas de raison de commencer par un chiffre.
Connais-tu un seul nom de variable qui mériterait de commencer par un
chiffre ?

Par contre comme certains l'ont dit, le caractère _ (underscore) permet
d'indiquer qu'une variable est "spéciale", attribut ou propriété d'une
classe par exemple. On peut même préfixer la variable-attribut par m_ dans
ce cas, norme Microsoft/Notation Hongroise je crois.

JM

--
Europe > France > Lyon
Clé AntiPourriel : PASUNPOURRIEL (ne pas retirer)
Avatar
Jean-Marc Molina
Ce que j'ai dit s'applique aussi aux namespaces (espaces de noms), désolé :)

JM

--
Europe > France > Lyon
Clé AntiPourriel : PASUNPOURRIEL (ne pas retirer)
Avatar
kanze
Fabien LE LEZ wrote in message
news:...
On Wed, 10 Dec 2003 12:16:03 +0100, Serge Paccalin
wrote:

Si on tolérait les identifiants commençant par un chiffre, 0xff en
serait un valide.


Idem avec 42ul.


Ce qui ne pose pas de problème particulier pour le compilateur : si ça
peut être une constante numérique, c'est une constante numérique --
sinon, c'est un identificateur.

Pour celui qui lit le programme, en revanche... Ou celui qui l'écrit.

Sans parler du fait que ce qui est légal comme nombre évolue. En C,
« 2AP3 » est une constante numérique légale (type double, valeur 336) ;
il y a toutes les chances que le C++ l'adopte aussi dans une version
future.

--
James Kanze GABI Software mailto:
Conseils en informatique orientée objet/ http://www.gabi-soft.fr
Beratung in objektorientierter Datenverarbeitung
11 rue de Rambouillet, 78460 Chevreuse, France, +33 (0)1 30 23 45 16


Avatar
Fabien LE LEZ
On 11 Dec 2003 01:51:25 -0800, wrote:

Ce qui ne pose pas de problème particulier pour le compilateur : si ça
peut être une constante numérique, c'est une constante numérique --
sinon, c'est un identificateur.


Mais certains compilos acceptent des extensions. Du coup, 153vx serait
considéré comme un identificateur par un compilo, et comme une
constante numérique de type "vx" par un autre.

--
;-)

Avatar
Alain Naigeon
"Gabriel Dos Reis" a écrit dans le message
news:
"Alain Naigeon" writes:

| 1toto n'est pas un identificateur.
|
| Et pas seulement en C++ (en fait, personnellement je n'ai
| pas connu de langage où ce serait un identificateur).

dromion[10:41]% gs -dNODISPLAY
GNU Ghostscript 6.53 (2002-02-13)
Copyright (C) 2002 artofcode LLC, Benicia, CA. All rights reserved.
This software comes with NO WARRANTY: see the file COPYING for
details.
GS>/1toto (Hello World) def
GS>1toto = > (Hello World)
GS>


Ravi d'avoir pris ma première leçon de Ghostcript ;-)

--

Français *==> "Musique renaissance" <==* English
midi - facsimiles - ligatures - mensuration
http://anaigeon.free.fr | http://www.medieval.org/emfaq/anaigeon/
Alain Naigeon - - Strasbourg, France

Avatar
Alain Naigeon
a écrit dans le message news:

Fabien LE LEZ wrote in message
news:...
On Wed, 10 Dec 2003 12:16:03 +0100, Serge Paccalin
wrote:

Si on tolérait les identifiants commençant par un chiffre, 0xff en
serait un valide.


Idem avec 42ul.


Ce qui ne pose pas de problème particulier pour le compilateur : si ça
peut être une constante numérique, c'est une constante numérique --
sinon, c'est un identificateur.


Il n'empêche, j'avais tout de même lu dans des bouquins pas
trop fantaisistes que ce principe de "pas de chiffre en tête d'un
identificateur" facilitait l'analyse. Depuis cette époque, il est
clair que les écrivains de compilateurs ont des problèmes bien
plus difficiles à résoudre que celui-ci, de toute façon.

--

Français *==> "Musique renaissance" <==* English
midi - facsimiles - ligatures - mensuration
http://anaigeon.free.fr | http://www.medieval.org/emfaq/anaigeon/
Alain Naigeon - - Strasbourg, France



Avatar
Gabriel Dos Reis
"Alain Naigeon" writes:

| "Gabriel Dos Reis" a écrit dans le message
| news:
| > "Alain Naigeon" writes:
| >
| > | 1toto n'est pas un identificateur.
| > |
| > | Et pas seulement en C++ (en fait, personnellement je n'ai
| > | pas connu de langage où ce serait un identificateur).
| >
| > dromion[10:41]% gs -dNODISPLAY
| > GNU Ghostscript 6.53 (2002-02-13)
| > Copyright (C) 2002 artofcode LLC, Benicia, CA. All rights reserved.
| > This software comes with NO WARRANTY: see the file COPYING for
| > details.
| > GS>/1toto (Hello World) def
| > GS>1toto = | > (Hello World)
| > GS>
|
| Ravi d'avoir pris ma première leçon de Ghostcript ;-)

:-)

Le langage s'appelle PostScript -- c'est un langage de programmation,
très flexible, à part entière, utilisé principalement pour la
description de page.

Ghostcript est juste un des interpréteurs répandus.

-- Gaby
Avatar
espie
In article ,
wrote:
Cobol. Si mes souvenirs sont bon, « 1 - 2 » est une expression avec deux
constantes, mais « 1-2 » est un identificateur légal. (Mais je ne suis
pas sûr. Ça fait plus de 20 ans que je n'ai pas régardé du côté Cobol,
et c'est possible qu'il exige au moins une lettre.)


C'est pas ONE MINUS TWO, l'expression avec deux constantes ?


Bon, okay, je sors.

Avatar
Alain Naigeon
"Gabriel Dos Reis" a écrit dans le message
news:

Le langage s'appelle PostScript -- c'est un langage de programmation,
très flexible, à part entière, utilisé principalement pour la
description de page.

Ghostcript est juste un des interpréteurs répandus.


Je l'avoue humblement, j'ignorais qu'on pouvait faire
du Postscript comme ça, interactivement, à l'écran !


--

Français *==> "Musique renaissance" <==* English
midi - facsimiles - ligatures - mensuration
http://anaigeon.free.fr | http://www.medieval.org/emfaq/anaigeon/
Alain Naigeon - - Strasbourg, France

Avatar
kanze
(Marc Espie) wrote in message
news:<brb1p6$7al$...
In article ,
wrote:
Cobol. Si mes souvenirs sont bon, « 1 - 2 » est une expression avec
deux constantes, mais « 1-2 » est un identificateur légal. (Mais je
ne suis pas sûr. Ça fait plus de 20 ans que je n'ai pas régardé du
côté Cobol, et c'est possible qu'il exige au moins une lettre.)


C'est pas ONE MINUS TWO, l'expression avec deux constantes ?


Il y a bien « SUBTRACT 1 FROM X GIVING Y ». Mais il y a bien un verbe
« COMPUTE » aussi, où ce qui suit ressemble vaguement à une expression
C++ ou une instruction d'affectation de Fortran. Sauf que s'il n'y a pas
d'espace à côté du -, le caractère fait partie d'un symbol : « a-b », ou
même « 10-1 », ce sont des symboles, tandis que « a- b », « a -b » ou
« a - b » s'interprète à peu près comme en C ou en C++.

--
James Kanze GABI Software mailto:
Conseils en informatique orientée objet/ http://www.gabi-soft.fr
Beratung in objektorientierter Datenverarbeitung
11 rue de Rambouillet, 78460 Chevreuse, France, +33 (0)1 30 23 45 16


1 2 3