Type Declarations
One of the hallmarks of C++ is that you can define a type
that resembles any built-in type. Thus, if you need to define a type
that supports arbitrary-sized integers—call it bigint
—you can do so, and programmers will be
able to use bigint
objects the same
way they use int
objects.
You can define a brand new type by defining a class (see Chapter 6) or an enumeration (see Section 2.5.2 later in this
chapter). In addition to declaring and defining new types, you can
declare a typedef
, which is a synonym
for an existing type. Note that while the name typedef
seems to be a shorthand for “type
definition,” it is actually a type declaration. (See Section 2.5.4 later in this
chapter.)
Fundamental Types
This section lists the fundamental type specifiers that are built into the C++
language. For types that require multiple keywords (e.g., unsigned
long
int
), you can mix the keywords in any order,
but the order shown in the following list is the conventional order.
If a type specifier requires multiple words, one of which is int
, the int
can be omitted. If a type is signed
, the signed
keyword can be omitted (except in the
case of signed
char
).
bool
Represents a Boolean or logical value. It has two possible values:
true
andfalse
.-
char
Represents a narrow character. Narrow character literals usually have type
char
. (If a narrow character literal contains multiple characters, the ...
Get C++ In a Nutshell now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.