Edge Rewrite
// HTMLRewriter · presentation

This page was redesigned at the edge.

Cloudflare fetched the original article and streamed it through HTMLRewriter to apply an entirely new visual system without rebuilding the source page.

Jump to content

static_cast

From Wikipedia, the free encyclopedia

In the C++ programming language, static_cast is an operator that performs an explicit type conversion.[1]

Syntax

[edit]
static_cast<type> (object);

The type parameter must be a data type to which object can be converted via a known method, whether it be a builtin or a cast. The type can be a reference or an enumerator. All types of conversions that are well-defined and allowed by the compiler are performed using static_cast.[2][failed verification]

The static_cast<> operator can be used for operations such as:

Although static_cast conversions are checked at compile time to prevent obvious incompatibilities, no run-time type checking is performed that would prevent a cast between incompatible data types, such as pointers. A static_cast from a pointer to a class B to a pointer to a derived class D is ill-formed if B is an inaccessible or ambiguous base of D. A static_cast from a pointer of a virtual base class (or a base class of a virtual base class) to a pointer of a derived class is ill-formed.

See also

[edit]

References

[edit]
  1. Programming: Principles and Practice Using C++. New Jersey, US: Addison-Wesley. 2009. p. 594. ISBN 978-0321543721. OCLC 988823060.
  2. Eckel, Bruce (2000). Thinking in C++. New Jersey, US: Prentice Hall. p. 857. ISBN 0-13-979809-9.