This document is the sum total of everything written down about nsCOMPtr. If you have a question about nsCOMPtr, and this document doesn't answer it, there probably isn't a document that answers it. You'll have to turn to the XPCOM newsgroup or another experienced nsCOMPtr user, or find the answer by experimentation.

If you've never used nsCOMPtr before, you're starting in the right place. Just keep reading. You'll know when to stop. After you've been using nsCOMPtrs for a while, and you reach unfamiliar territory, or run into compiler errors; you may want to return to this document to get help from the Reference Manual or the FAQ.


  1. Status, Recent Changes, and Plans
    1. Recent changes to nsCOMPtr
  2. Getting Started Guide
    1. Introduction
    2. Using nsCOMPtr
    3. Summary
  3. Reference Manual
    1. The Basics
    2. Initialization and Assignment
    3. Using an nsCOMPtr<T> as a T*
    4. Efficiency and Correctness
    5. Compiler Annoyances
  4. Frequently Asked Questions
    1. Buildtime Errors
    2. Runtime Errors
    3. How do I...
    4. General
    5. Bibliography

Original Document Information