Passage d'arguments par valeur et adresse
	
	
		Bonjour,
J'ai besoin de reconnaitre,dans une déclaration c++,si un argument est passé par valeur ou par adresse.J'ai écris un traducteur de header's files pour masm et celui ci me pose de temps en temps des questions ressemblant à des colles.Celle qui suit en est une.Je vois a quoi sert le *,& CONST et INT
La fonction:
	Citation:
	
		
		
			DECLARE_INTERFACE_(ID3DXBaseMesh, IUnknown)
{
 ...
    STDMETHOD(GetDeclaration)(THIS_ D3DVERTEXELEMENT9 Declaration[MAX_FVF_DECL_SIZE]) PURE;
 ..
}
			
		
	
 GetDeclaration passe la structure D3DVERTEXELEMENT9 par adresse.La taille de la structure est supéreure à 1 dword.
La fonction:
	Citation:
	
		
		
			HRESULT AssocCreate(CLSID clsid,REFIID riid,LPVOID *pqa);
			
		
	
 AssocCreate passe CLSID et REFIID par valeur.Ces deux structures ont une taille > 1 dword.
On ne trouve rien dans la déclaration des deux fonctions indiquant le choix opéré.
Faut il en conclure que le c++ à un comportement différent en fonction du type de fonction???.
L'une est HRESULT l'autre STDMETHOD dans une interface.
Merci pour la réponse