· Lexical · Modules · Declarations · Types · Properties · Attributes · Pragmas · Expressions · Statements · Arrays · Structs & Unions · Classes · Interfaces · Enums · Functions · Operator Overloading · Templates · Mixins · Contracts · Conditional Compilation · Handling errors · Garbage Collection · Memory Management · Floating Point · Inline Assembler · Documentation Comments · Interfacing To C · Portability Guide · Embedding D in HTML · Named Character Entities · Application Binary Interface |
InterfacesInterfaceDeclaration:Interfaces descrevem uma lista de funções que uma classe qua herda dela deve implementar. Uma classe qua implementa uma interface pode ser convertida para uma referência para aquela interface. Interfaces correspondem à interface exposta por objetos do sistema operacional, como COM/OLE/ActiveX para Win32. Interfaces não podem derivar de classes; somente de outras interfaces. Classes não podem derivar de uma interface interface múltiplas vezes. interface DUma instância de uma intrerface não pode ser criada. interface DFunções membro de interfaces não tem implementação. interface DTodas as funções da interface devem ser definidas em uma classe que herda daquela interface: interface DInterfaces podem ser herdadas e funções anuladas: interface DInterfaces podem ser re-implementadas em classes derivadas: interface DUma interface re-implementada deve implementar todas as funções da interface, ela não herda elas de uma super classe: interface D Interfaces COMUma variante nas interfaces é a interface COM. Uma interface COM é projetada para mapear diretamente sobre um objeto COM do Windows. Qualquer objeto COM pode ser representado por uma interface COM, e qualquer objeto D com uma interface COM pode ser usado por clientes COM externos.Uma interface COM é definida como uma que deriva da interface std.c.windows.com.IUnknown. Uma interface COM se difere de uma interface D regular em que:
|