[win/C++] conventions

conventions [win/C++] - Programmation

Marsh Posté le 18-02-2002 à 23:27:55    

dans :
 
LPRECT lpDestRect;
 
le LP signifie quoi?

Reply

Marsh Posté le 18-02-2002 à 23:27:55   

Reply

Marsh Posté le 18-02-2002 à 23:31:53    

Long Pointer je crois

Reply

Marsh Posté le 18-02-2002 à 23:34:04    

Ce doit être un reste de la prog 16 bits :D

Reply

Marsh Posté le 18-02-2002 à 23:34:08    

je croyais qu'on utilisait plus vraiment les pointeurs en C++
 
du moins sous la forme:
 
void *

Reply

Marsh Posté le 18-02-2002 à 23:35:27    

Là c'est un pointeur sur une structure RECT.

Reply

Marsh Posté le 19-02-2002 à 00:51:48    

sinon, que représente un handle?
 
c'est chiant tout ces termes quand on vient de unix

Reply

Marsh Posté le 19-02-2002 à 00:57:15    

bin un handle c comme sous unix, c'est un numéro d'identification (descripteur je croa :) )
 
en fait sous unix tu as la table des inodes ou tout est référencé (fichier, pipes nommés...)
 
sous win, les pipes, mémoires partagées mutex & co peuvent être nommés et donc tu les maintients par des handles....

Reply

Marsh Posté le 19-02-2002 à 10:09:42    

titoine42>sisi, on peut, LPVOID est la pour nous le rappeler ;)

 

[jfdsdjhfuetppo]--Message édité par KarLKoX--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 19-02-2002 à 10:13:00    

ok

Reply

Marsh Posté le 19-02-2002 à 10:37:04    

qui sait ca refera peut-etre son apparition
avec les OS 64 bits..
 
Sinon pour titoine :
QUOI on n'utilise plus les pointeurs en C++??
Ben si c'est un des elements principaux
du langage et void* est le pointeur receveur universel.
 
LEGREG

Reply

Marsh Posté le 19-02-2002 à 10:37:04   

Reply

Marsh Posté le 19-02-2002 à 12:40:42    

chui d'accord avec titoine, ya pas mal de truc lourd je trouve en win32... et qd t'y connais rien, t vraiment perdu !
 
LP :  c effectivement Long Pointer
tout les trucs qui commencent par H, c'est des Handle...
et puis t'en as plein d'autre mais je ne les ai pas en tête...
j'ai eu un cours la dessus et g toutes les significations de ces nomenclatures alors si tu le souhaites et si ça peut t'aider, je peux te les filer...

Reply

Marsh Posté le 19-02-2002 à 13:05:53    

Moustaaki a écrit a écrit :

chui d'accord avec titoine, ya pas mal de truc lourd je trouve en win32... et qd t'y connais rien, t vraiment perdu !
 
LP :  c effectivement Long Pointer
tout les trucs qui commencent par H, c'est des Handle...
et puis t'en as plein d'autre mais je ne les ai pas en tête...
j'ai eu un cours la dessus et g toutes les significations de ces nomenclatures alors si tu le souhaites et si ça peut t'aider, je peux te les filer...  




 
ça m'intéresse

Reply

Marsh Posté le 19-02-2002 à 13:11:19    

ok, g v récupérer tout ça et j'essayerais de te le filer dans l'arpèm'...
 
aïe j'espère seulement que j'en ai récupérer une copie chez moua sinon, c à la fac et j'y retourne dans 9 semaines :)
je te tiend au courant de toute façon

 

[jfdsdjhfuetppo]--Message édité par Moustaaki--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 19-02-2002 à 14:32:22    

donc, je ne l'ai pas récupéré apparement...  
mais g balancé un mail sur la liste de diffusion de mon iup pour que quelqu'un me l'envoie... dès que je l'aie, je te le post :)
à plus !

Reply

Marsh Posté le 19-02-2002 à 14:34:50    

C'est bizarre, mais moi je préfere le win32 au mfc, peut etre parce que c'est du C++ :D

Reply

Marsh Posté le 19-02-2002 à 14:36:07    

KarLKoX a écrit a écrit :

C'est bizarre, mais moi je préfere le win32 au mfc, peut etre parce que c'est du C++ :D  




 
ouai, mais c du procédural évenementiel et c'est vite le bordel par rapport à un langage objet ! tu ne trouves po ?

Reply

Marsh Posté le 19-02-2002 à 15:28:32    

titoine42 a écrit a écrit :

 
 
ça m'intéresse  




 
 
voilà :
 
#include "windows.h"
/* Contient  
 * - les prototypes de fonction de l'API win32  
 * - les structures specifiques a Pindows
 *     ex: rect (4 entiers : x1, y1, x2, y2)
 * - les types de donnees de base "a la Pindows" (predefinis)
 *     I : integer(16 bits)
 *     L : long (32bits)
 *     U : unsigned
 *     W : Word
 *     STR : string
 *     ZSTR : string terminiee par \0
 *     C: constante
 *     P : pointer
 *     H : Handle
 *
 * - les types predefinis
 *     INT  (entier)
 *     UINT  (entier non signé)
 *     LPSTR (Long Pointer String)
 *     LPZSTR
 *     LPCSTR
 *     WPARAM (Parametre de msg de type Word)
 *     LPARAM (parametre de msg de type Long)
 *
 * - les Handles : identifiant donne par Pindows pour chaque
 *                objet cree
 *   Types de Handle courants
 *    HANDLE : quelconque
 *       HWND : sur une fenetre
 *              HDC : Device Context (pour dessiner, ecrire ...)
 *    HMENU : sur une option de menu
 *    HINSTANCE : instance d'application
 *    HBRUSH : sur une brosse (pour fond de fenetre, de texte ...)
 *    HPEN : pour ecrire ou dessiner
 *
 * - les constantes numeriques
 *    CW_USEDEFAULT : dimension par defaut pour une fenetre
 *    SW_HIDE : ouverture cachée d'une fenetres
 */
 
 
voili voilou :)
chai po si il ya tout (ça m'étonnerais...) mais ça peut déjà t'aider un peu :)

 

[jfdsdjhfuetppo]--Message édité par Moustaaki--[/jfdsdjhfuetppo]

Reply

Marsh Posté le 19-02-2002 à 15:36:03    

:jap:

Reply

Marsh Posté le 19-02-2002 à 15:53:03    

cela s'appelle la notation hongroise
a cause de son auteur (Charles Simonyi de chez Microsoft)
 
C'est une identification visuelle des types
lorsque l'on programme dans un langage faiblement
type (comme le C)
evidemment ca ne remplace pas un typage
fort parce que rien n'interdit d'entrer un pointeur
d'element dans un pointeur de tableau mais
le programmeur sera prevenu au moins visuellement.
C'est moins utile dans des langages plus fortement
types donc on ne verra pas beaucoup de telle
notation en java par exemple.
Par contre des programmeurs l'utilisent meme lorsqu'il
n'y a pas de risque de confusion comme moyen
mnemotechnique (exemple: CMachin designe une classe
ou LPMACHIN designe un pointeur vers la classe CMachin,
ce qui evite d'avoir a se demander ce que signifie:
A a; )
 
A+
LEGREG

Reply

Marsh Posté le 19-02-2002 à 16:10:17    

legreg a écrit a écrit :

cela s'appelle la notation hongroise
a cause de son auteur (Charles Simonyi de chez Microsoft)
 
C'est une identification visuelle des types
lorsque l'on programme dans un langage faiblement
type (comme le C)
evidemment ca ne remplace pas un typage
fort parce que rien n'interdit d'entrer un pointeur
d'element dans un pointeur de tableau mais
le programmeur sera prevenu au moins visuellement.
C'est moins utile dans des langages plus fortement
types donc on ne verra pas beaucoup de telle
notation en java par exemple.
Par contre des programmeurs l'utilisent meme lorsqu'il
n'y a pas de risque de confusion comme moyen
mnemotechnique (exemple: CMachin designe une classe
ou LPMACHIN designe un pointeur vers la classe CMachin,
ce qui evite d'avoir a se demander ce que signifie:
A a; )
 
A+
LEGREG  




 
ouai, chui bien d'accord.. d'ailleur quand on prog bien (comme on nous la appris à l'école arf  :lol:  ) on utilise ce genre de truc tout le tps... même en conception d'interface :
par exemple un bouton pressoire annuler sera : BP_Annuler
une combo box : CB_ChoixTruc... etc.  
et c vrai que ça permet une bien meilleur lisibilité et ça sert bp lorsque le prog est destiné à être développé par plusieurs collaborateurs... d'ailleurs, pour faire part de mon expérience, les "vieux" n'ont pas tendance à l'utiliser et j'ai eu l'occasion de reprendre des prog fait à l'ancienne école et c vraiment pas évident !
 
CCL : programmeurs, developpeurs : utilisez la nomenclature, pensez aux pauv' petits programmeurs qui passeront derrière, qui comprendront rien et qui seront obligé de tout recommencer ! (c mon cas... sniff)

Reply

Marsh Posté le 19-02-2002 à 20:35:01    

Moustaaki a écrit a écrit :

 
 
ouai, chui bien d'accord.. d'ailleur quand on prog bien (comme on nous la appris à l'école arf  :lol:  ) on utilise ce genre de truc tout le tps... même en conception d'interface :
par exemple un bouton pressoire annuler sera : BP_Annuler
une combo box : CB_ChoixTruc... etc.  
et c vrai que ça permet une bien meilleur lisibilité et ça sert bp lorsque le prog est destiné à être développé par plusieurs collaborateurs... d'ailleurs, pour faire part de mon expérience, les "vieux" n'ont pas tendance à l'utiliser et j'ai eu l'occasion de reprendre des prog fait à l'ancienne école et c vraiment pas évident !
 
CCL : programmeurs, developpeurs : utilisez la nomenclature, pensez aux pauv' petits programmeurs qui passeront derrière, qui comprendront rien et qui seront obligé de tout recommencer ! (c mon cas... sniff)  




 
pas besoin de passer derrière moi, mon code est toujours parfait :D

Reply

Marsh Posté le 19-02-2002 à 21:28:49    

titoine42 a écrit a écrit :

 
 
pas besoin de passer derrière moi, mon code est toujours parfait :D  




 
tu pourrais une grosse appli uniquement en procedural ?
bin chapo... et vive la réutilisabilité après !
l'objet, ya que ça de vrai... yaura même plus que ça en dev d'appli... en dev système, je dis po

Reply

Marsh Posté le 19-02-2002 à 22:15:03    

titoine42 a écrit a écrit :

je croyais qu'on utilisait plus vraiment les pointeurs en C++
du moins sous la forme:
void *  



Les API Win32 sont en C, pas en C++.

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed