Changes

Jump to: navigation, search

Components and Interfaces

1,074 bytes added, 23:54, 4 October 2006
Resources
=== Interface ===
There are two fundamental issues in component and interface-based programming:
* lifetime (aka object ownership)
* interface querying (identifing components at run-time).
 
These issues are addressed by the nsISupports interface that every XPCOM object should implement.
 
The nsISupports interface is similar to the Object and other run-time interfaces built into Java and .NET.
 
The following is a simple example of an implemented nsISupports interface for the class Sample.
 
class Sample: public nsISupports {
private:
nsrefcnt mRefCnt;
public:
Sample();
virtual ~Sample();
NS_IMETHOD QueryInterface(const nsIID &aIID, void **aResult);
NS_IMETHOD_(nsrefcnt) AddRef(void);
NS_IMETHOD_(nsrefcnt) Release(void);
};
 
nsISupports interface is explained well [http://www.mozilla.org/projects/xpcom/book/cxc/html/quicktour2.html#1003494 here].
== Related Links ==
*https://addons.mozilla.org/firefox/2230/
== Examples Resources == Links to Newsgroup:* [news://news.mozilla.org/netscape.public.mozilla.xpcom mozilla.xpcom newsgroup] Links to IRC Channels: * [irc://irc.mozilla.org/developers #Developers]
1
edit

Navigation menu