OVH Cloud OVH Cloud

setq ou defconst

4 réponses
Avatar
Leon Groth
Bonjour,

Une bonne âme pourrait-elle m'expliquer la différence entre
setq et defconst ??

d'avance merci.

4 réponses

Avatar
lhabert
Leon Groth :

Une bonne âme pourrait-elle m'expliquer la différence entre
setq et defconst ??



1) « defconst » permet de documenter la variable (en ajoutant une propriété
sur la variable).
2) Sur une variable locale à un buffer, « defconst » agit sur la valeur
globale, tandis que « setq » agit sur la valeur locale.
3) On est censé utilisé « defconst » pour définir une variable qu'on ne
modifiera pas. Mais c'est complètement pipo, vu qu'il n'y a rien en pratique
qui interdit de modifier une variable définie avec « defconst ».
Avatar
Pascal Bourguignon
Leon Groth writes:

Bonjour,

Une bonne âme pourrait-elle m'expliquer la différence entre
setq et defconst ??

d'avance merci.



defconst DEFini une CONSTante.

(setq x valeur) == (set (quote x) valeur)
c'est à dire, assignation de la 'valeur' au symbole 'x'.

--
__Pascal Bourguignon__ http://www.informatimago.com/

Voting Democrat or Republican is like choosing a cabin in the Titanic.
Avatar
Pascal Bourguignon
(Luc Habert) writes:

Leon Groth :

> Une bonne âme pourrait-elle m'expliquer la différence entre
> setq et defconst ??

1) « defconst » permet de documenter la variable (en ajoutant une propriété
sur la variable).
2) Sur une variable locale à un buffer, « defconst » agit sur la valeur
globale, tandis que « setq » agit sur la valeur locale.
3) On est censé utilisé « defconst » pour définir une variable qu'on ne
modifiera pas. Mais c'est complètement pipo, vu qu'il n'y a rien en pratique
qui interdit de modifier une variable définie avec « defconst ».



Quand on signe un contrat par exemple de location d'un appartement, en
fait c'est pipo, il n'y a rien en pratique qui vous interdise de ne
pas payer le loyer ou de ne pas revendre cet appartement.

--
__Pascal Bourguignon__ http://www.informatimago.com/

Voting Democrat or Republican is like choosing a cabin in the Titanic.
Avatar
Xavier Maillard
On 8 oct 2004, Pascal Bourguignon wrote:

Leon Groth writes:

> Bonjour,
>
> Une bonne âme pourrait-elle m'expliquer la différence entre
> setq et defconst ??
>
> d'avance merci.

defconst DEFini une CONSTante.

(setq x valeur) == (set (quote x) valeur)
c'est à dire, assignation de la 'valeur' au symbole 'x'.



Voir également sur le même sujet les autres mots tels que sont:

- defvar
- defcustom

Ensuite les définitions de variables avec ou sans "*" dans la
docstring...

--
.o. Xavier Maillard Tel: +33 6 68 04 64 37
..o
ooo