Index
| A number represents a single reference to a topic. |
| A number with a "+" sign represents a longer discussion of a topic. |
|
Symbols A B C D E F G H I M N O P R S T U V Y
| Symbols |
|
+ (plus sign) before method names
1
|
|
- (minus sign) before method names
1
|
|
// marker comment
1
|
|
@"" directive (string declaration)
1
2
|
|
_cmd
1
2
3
4
5
6
|
|
__cplusplus preprocessor constant
1
|
|
__OBJC__ preprocessor constant
1
|
| A |
|
abstract classes
1+
2
|
|
action messages
1
|
|
adaptation
1
|
|
adopting a protocol
1+
2
|
|
alloc method
1
2
|
|
allocating memory
1
|
|
allocWithZone: method
1
|
|
anonymous objects
1
|
|
argument types
|
| |
and dynamic binding
1
|
| |
and selectors
1
|
| |
declaring
1
|
| |
encoding
1
|
| |
in declarations
1
|
|
arguments
|
| |
during initialization
1
|
| |
hidden
1
2
|
| |
in remote messages
1
|
| |
specifying
1
|
| |
type modifiers
1
|
| |
variable
1
|
|
autorelease method
1
2
3
|
| B |
|
behaviors
|
| |
inheriting
1
|
| |
of Cocoa objects
1
|
| |
of NSObject class
1
|
| |
overriding
1
|
|
BOOL data type
1
|
|
bycopy type qualifier
1
2
|
|
byref type qualifier
1
2
|
| C |
|
.c extension
1
2
|
|
C language support
1
|
|
C++ language support
1+
|
|
@catch() directive
1
2
3
|
|
categories
1+
|
| |
See also subclasses
|
| |
and informal protocols
1
|
| |
declaration of
1+
|
| |
declaring
1
|
| |
defining
1
|
| |
implementation of
1+
|
| |
loading dynamically
1
|
| |
naming conventions
1
|
| |
of root classes
1
|
| |
scope of variables
1
|
| |
uses of
1
2
|
|
Class data type
1
2
|
|
@class directive
1
2
3
4
5
|
|
class method
1
|
|
class methods
|
| |
and selectors
1
|
| |
and static variables
1
|
| |
declaration of
1
2
|
| |
defined
1
|
| |
of root class
1
|
| |
using self
1
|
|
class object
|
| |
defined
1
|
| |
initializing
1
|
|
class objects
1+
|
| |
and root class
1
|
| |
and root instance methods
1
2
|
| |
and static typing
1
|
| |
as receivers of messages
1
|
| |
variables and
1
|
|
classes
1+
|
| |
root. See root classes
|
| |
abstract
1
|
| |
and inheritance
1
2
|
| |
and instances
1
|
| |
and namespaces
1
|
| |
declaring
1+
2
3
|
| |
defining
1+
2
|
| |
designated initializer of
1
|
| |
examples
1
|
| |
extending
1
|
| |
identifying
1
|
| |
implementation of
1
2
|
| |
instance methods
1
|
| |
interfaces
1
|
| |
introspection
1
2
|
| |
loading dynamically
1
|
| |
naming conventions
1
|
| |
subclasses
1
|
| |
superclass
1
|
| |
uses of
1
|
|
comment marker (//)
1
|
|
compiler directives, summary of
1
|
|
conforming to protocols
1
|
|
conformsToProtocol: method
1
2
|
|
const type qualifier
1
|
|
conventions of this book
1+
|
|
customization with class objects
1+
|
| D |
|
data members. See instance variables
|
|
data structures. See instance variables
|
|
data types defined by Objective-C
1
|
|
dealloc method
1
|
|
deallocating objects
1
|
|
@defs() directive
1
2
3
4
|
|
designated initializer
1+
|
|
development environment
1
|
|
directives, summary of
1+
|
|
dispatch tables
1
|
|
dispatching messages
1
|
|
distributed objects
1
|
|
doesNotRecognizeSelector: method
1
|
|
dynamic binding
1+
|
|
dynamic loading
1
|
|
dynamic typing
1
|
| E |
|
@encode() directive
1
2
3
4
|
|
encoding methods
1
|
|
@end directive
1
2
3
4
5
6
|
|
exceptions
1+
|
| |
catching
1
|
| |
clean-up processing
1
|
| |
compiler switch
1
|
| |
exception handler
1
|
| |
nesting exception handlers
1
|
| |
NSException
1
2
3
|
| |
synchronization
1
|
| |
system requirements
1
|
| |
throwing
1
2
|
| F |
|
@finally directive
1
2
3
|
|
formal protocols
1
2
|
| |
See also protocols
|
|
forwarding messages
1+
|
|
forwardInvocation: method
1
|
| G |
|
GNU Compiler Collection
1
|
| H |
|
.h extension
1
2
3
4
|
|
hidden arguments
1
2
|
| I |
|
id data type
1
|
| |
and method declarations
1
|
| |
and static typing
1
2
|
| |
as default method return type
1
|
| |
of class objects
1
|
| |
overview
1
|
|
IMP data type
1
|
|
@implementation directive
1
2
3
4
|
|
implementation files
1
2
|
|
implementation
|
| |
of classes
1+
2
|
| |
of methods
1
2
|
|
#import directive
1
2
3
4
|
|
in type qualifier
1
2
|
|
#include directive
1
|
|
#include directive See #import directive
|
|
informal protocols
1
|
| |
See also protocols
|
|
inheritance
1+
|
| |
and forwarding
1
|
| |
of instance variables
1
|
| |
of interface files
1
|
|
init method
1
2
|
|
initialize method
1
|
|
initializing objects
1
2
|
|
inout type qualifier
1
2
|
|
instance methods
1
|
| |
and selectors
1
|
| |
declaration of
1
|
| |
declaring
1
|
| |
naming conventions
1
|
| |
syntax
1
|
|
instance variables
|
| |
declaring
1
2
3
|
| |
defined
1
|
| |
encapsulation
1
|
| |
inheriting
1+
2
|
| |
initializing
1
|
| |
naming conventions
1
|
| |
of the receiver
1
|
| |
public access to
1
2
|
| |
referring to
1
|
| |
releasing
1
|
| |
scope of
1
2+
3
|
|
instances of a class
|
| |
allocating
1+
|
| |
creating
1
|
| |
defined
1
|
| |
initializing
1
2+
|
|
instances of the class
|
| |
See also objects
|
|
@interface directive
1
2
3
4
5
6
|
|
interface files
1
2
|
|
introspection
1
2
|
|
isa instance variable
1
2
3
|
|
isKindOfClass: method
1
2
3
|
|
isMemberOfClass: method
1
2
|
| M |
|
.m extension
1
2
3
4
5
6
|
|
memory management
1
|
|
memory
|
| |
allocating
1
2
|
| |
deallocating
1
|
|
message expressions
1
2
|
|
message receivers
1
|
|
messages
1+
|
| |
See also methods
|
| |
and selectors
1
2
|
| |
and static typing
1
|
| |
asynchronous
1
|
| |
binding
1
|
| |
defined
1
2
|
| |
encoding
1
|
| |
forwarding
1+
|
| |
remote
1
|
| |
sending
1
2
|
| |
synchronous
1
|
| |
syntax
1
|
| |
varying at runtime
1
2
|
|
messaging
1+
|
| |
avoiding errors
1
|
| |
to remote objects
1+
|
|
metaclass object
1
|
|
method implementations
1
2
|
|
methodForSelector: method
1
2
|
|
methods
1
|
| |
See also behaviors
|
| |
See also messages
|
| |
adding with categories
1
|
| |
address of
1
|
| |
and selectors
1
2
|
| |
and variable arguments
1
|
| |
argument types
1+
|
| |
arguments
1
2
|
| |
calling super
1
|
| |
class methods
1
|
| |
declaring
1
2
|
| |
encoding
1
|
| |
hidden arguments
1
|
| |
implementing
1
2
|
| |
inheriting
1
|
| |
instance methods
1
|
| |
naming conventions
1
|
| |
overriding
1
|
| |
return types
1
2
|
| |
returning values
1
2
|
| |
selecting
1
|
| |
specifying arguments
1
|
| |
using instance variables
1
|
|
minus sign (-) before method names
1
|
|
.mm extension
1
2
|
|
multiple inheritance
1
|
| N |
|
name spaces
1
|
|
naming conventions
1
|
|
Nil constant
1
|
|
nil constant
1
2
|
|
NO constant
1
|
|
NSBundle
1
|
|
NSClassFromString function
1
|
|
NSException
1
2
3
|
|
NSInvocation
1
|
|
NSObject
1
2
3
|
|
NSSelectorFromString function
1
|
|
NSStringFromSelector function
1
|
| O |
|
objc_loadModules function
1
|
|
objc_msgSend function
1
2
|
|
objc_object structure
1
|
|
object
1
|
|
object identifiers
1
|
|
Objective-C
1
|
|
Objective-C++
1
|
|
objects
1+
2
|
| |
See also class objects, Protocol objects
|
| |
allocating memory for
1
|
| |
and ownership
1
|
| |
anonymous
1
|
| |
autoreleasing
1
|
| |
converting to structures
1
|
| |
creating
1
|
| |
customizing
1
|
| |
data structure of
1
|
| |
designated initializer
1
|
| |
dynamic typing
1
2
|
| |
examples
1
|
| |
initializing
1
2
3
4
5
|
| |
initializing a class object
1
|
| |
instance variables
1
|
| |
introspection
1
|
| |
method inheritance
1
|
| |
Protocol
1
|
| |
reference counting
1
|
| |
releasing
1
|
| |
remote
1
|
| |
retaining
1
|
| |
static typing
1
|
| |
surrogate
1+
|
|
oneway type qualifier
1
2
|
|
out type qualifier
1
2
|
|
overriding methods
1
|
| P |
|
parameters. See arguments
|
|
performSelector: method
1
|
|
performSelector:withObject: method
1
|
|
performSelector:withObject:withObject: method
1
|
|
plus sign (+) before method names
1
|
|
polymorphism
|
| |
defined
1
|
|
precompiled headers
1
|
|
preprocessor directives, summary of
1
|
|
@private directive
1
2
3
4
|
|
procedures. See methods
|
|
@protected directive
1
2
3
4
|
|
@protocol directive
1
2
3
4
5
6
7
8
9
10
11
|
|
Protocol objects
1
|
|
protocols
1+
|
| |
adopting
1
2
3
|
| |
conforming to
1
2
3
|
| |
declaring
1
2
|
| |
formal
1+
|
| |
forward references to
1
2
|
| |
incorporating other protocols
1+
2
|
| |
informal
1
|
| |
naming conventions
1
|
| |
type checking
1
|
| |
uses of
1
2+
|
|
proxy objects
1
2
|
|
@public directive
1
2
3
4
|
| R |
|
receivers of messages
|
| |
and class names
1
|
| |
defined
1
|
| |
in messaging expression
1
|
| |
in messaging function
1
|
| |
instance variables of
1
|
|
reference counting
1
|
|
release method
1
2
|
|
remote messages
1
|
|
remote objects
1
|
|
remote procedure calls (RPC)
1
|
|
respondsToSelector: method
1
2
|
|
retain method
1
|
|
retaining objects
1
|
|
return types
|
| |
and messaging
1
|
| |
and statically typed objects
1
|
| |
declaration of
1
|
| |
encoding
1
|
|
root classes
|
| |
See also NSObject
|
| |
and class interface declarations
1
|
| |
and inheritance
1
|
| |
categories of
1
|
| |
declaration of
1
|
|
runtime system
|
| |
functions
1
|
| |
overview
1
|
| S |
|
SEL data type
1
2
|
|
@selector() directive
1
2
3
4
5
|
|
selectors
1+
|
| |
and hidden arguments
1
|
| |
and messaging errors
1
|
| |
defined
1
|
| |
in messaging function
1
|
|
self
1
2
3
4
5
|
|
Smalltalk
1
|
|
specialization
1
|
|
static type checking
1
|
|
static typing
1+
|
| |
and instance variables
1
|
| |
in interface files
1
|
| |
introduced
1
|
| |
to inherited classes
1
|
|
strings, declaring
1
2
|
|
subclasses
1
|
|
super variable
1
2
3
|
|
superclasses
|
| |
See also abstract classes
|
| |
and inheritance
1
|
| |
importing
1
|
|
surrogate objects
1
|
|
synchronization
1+
|
| |
compiler switch
1
|
| |
exceptions
1
|
| |
mutexes
1
|
| |
system requirements
1
|
|
@synchronized() directive
1
2
|
| T |
|
target-action paradigm
1+
|
|
targets
1
|
|
this keyword
1
|
|
@throw directive
1
2
3
4
|
|
@try directive
1
2
|
|
type checking
|
| |
class types
1
2
|
| |
protocol types
1
|
|
type encoding
1+
|
|
type introspection
1
|
|
types defined by Objective-C
1
|
| U |
|
unsigned int data type
1
|
| V |
|
variable arguments
1
|
|
void data type
1
|