28 votes

Que fait l'attribut C # CoClass?

J'ai trouvé du code comme celui-ci dans une bibliothèque tierce que nous utilisons.

 [CoClass(typeof(BlahClass))]
public interface Blah : IBlah
{
}
 

Qu'est-ce que ça fait exactement? La documentation msdn n'a pas suffisamment éclairé le sujet pour que je puisse le suivre.

42voto

Daniel Earwicker Points 63298

Il déclare que l'interface Blah est destinée à être implémentée par une classe spécifique. Cela signifie que vous pouvez facilement dire new Blah et le runtime saura quel objet créer - quelque chose qui n'est normalement pas possible avec une interface.

Si vous regardez la déclaration générée pour BlahClass, elle aura vraisemblablement un Guid associé qui peut être utilisé pour créer une instance d'un objet COM.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X