Run-time type information, the Glossary
In computer programming, run-time type information or run-time type identification (RTTI) is a feature of some programming languages (such as C++, Object Pascal, and Ada) that exposes information about an object's data type at runtime.[1]
Table of Contents
31 relations: Ada (programming language), Bjarne Stroustrup, C (programming language), C++, Class (computer programming), Class hierarchy, Data type, Delphi (software), Downcasting, Exception handling, Function (computer programming), Inheritance (object-oriented programming), Java (programming language), Null pointer, Object (computer science), Object Pascal, Pointer (computer programming), Polymorphism (computer science), Reference (C++), Reference (computer science), Reflective programming, Reserved word, Run-time type information, Static cast, Template (C++), Time complexity, Type conversion, Type inference, Type introspection, Typeof, Virtual function.
- Class (computer programming)
- Programming language comparisons
Ada (programming language)
Ada is a structured, statically typed, imperative, and object-oriented high-level programming language, inspired by Pascal and other languages.
See Run-time type information and Ada (programming language)
Bjarne Stroustrup
Bjarne Stroustrup (born 30 December 1950) is a Danish computer scientist, known for the development of the C++ programming language. Run-time type information and Bjarne Stroustrup are C++.
See Run-time type information and Bjarne Stroustrup
C (programming language)
C (pronounced – like the letter c) is a general-purpose programming language.
See Run-time type information and C (programming language)
C++
C++ (pronounced "C plus plus" and sometimes abbreviated as CPP) is a high-level, general-purpose programming language created by Danish computer scientist Bjarne Stroustrup.
See Run-time type information and C++
Class (computer programming)
In object-oriented programming, a class defines the shared aspects of objects created from the class.
See Run-time type information and Class (computer programming)
Class hierarchy
A class hierarchy or inheritance tree in computer science is a classification of object types, denoting objects as the instantiations of classes (class is like a blueprint, the object is what is built from that blueprint) inter-relating the various classes by relationships such as "inherits", "extends", "is an abstraction of", "an interface definition". Run-time type information and class hierarchy are class (computer programming).
See Run-time type information and Class hierarchy
Data type
In computer science and computer programming, a data type (or simply type) is a collection or grouping of data values, usually specified by a set of possible values, a set of allowed operations on these values, and/or a representation of these values as machine types. Run-time type information and data type are data types.
See Run-time type information and Data type
Delphi (software)
Delphi is a general-purpose programming language and a software product that uses the Delphi dialect of the Object Pascal programming language and provides an integrated development environment (IDE) for rapid application development of desktop, mobile, web, and console software, currently developed and maintained by Embarcadero Technologies.
See Run-time type information and Delphi (software)
Downcasting
In class-based programming, downcasting, or type refinement, is the act of casting a base or parent class reference, to a more restricted derived class reference. Run-time type information and downcasting are class (computer programming).
See Run-time type information and Downcasting
Exception handling
In computing and computer programming, exception handling is the process of responding to the occurrence of exceptions – anomalous or exceptional conditions requiring special processing – during the execution of a program.
See Run-time type information and Exception handling
Function (computer programming)
In computer programming, a function, procedure, method, subroutine, routine, or subprogram is a callable unit of software logic that has a well-defined interface and behavior and can be invoked multiple times.
See Run-time type information and Function (computer programming)
Inheritance (object-oriented programming)
In object-oriented programming, inheritance is the mechanism of basing an object or class upon another object (prototype-based inheritance) or class (class-based inheritance), retaining similar implementation.
See Run-time type information and Inheritance (object-oriented programming)
Java (programming language)
Java is a high-level, class-based, object-oriented programming language that is designed to have as few implementation dependencies as possible.
See Run-time type information and Java (programming language)
Null pointer
In computing, a null pointer or null reference is a value saved for indicating that the pointer or reference does not refer to a valid object.
See Run-time type information and Null pointer
Object (computer science)
In computer science, an object is a programming element that has state, has associated operations and is accessed via an identifier. Run-time type information and object (computer science) are data types.
See Run-time type information and Object (computer science)
Object Pascal
Object Pascal is an extension to the programming language Pascal that provides object-oriented programming (OOP) features such as classes and methods.
See Run-time type information and Object Pascal
Pointer (computer programming)
In computer science, a pointer is an object in many programming languages that stores a memory address.
See Run-time type information and Pointer (computer programming)
Polymorphism (computer science)
In programming language theory and type theory, polymorphism is the use of a single symbol to represent multiple different types. Run-time type information and polymorphism (computer science) are data types.
See Run-time type information and Polymorphism (computer science)
Reference (C++)
In the C++ programming language, a reference is a simple reference datatype that is less powerful but safer than the pointer type inherited from C. The name C++ reference may cause confusion, as in computer science a reference is a general concept datatype, with pointers and C++ references being specific reference datatype implementations. Run-time type information and reference (C++) are C++.
See Run-time type information and Reference (C++)
Reference (computer science)
In computer programming, a reference is a value that enables a program to indirectly access a particular datum, such as a variable's value or a record, in the computer's memory or in some other storage device. Run-time type information and reference (computer science) are data types.
See Run-time type information and Reference (computer science)
Reflective programming
In computer science, reflective programming or reflection is the ability of a process to examine, introspect, and modify its own structure and behavior. Run-time type information and reflective programming are programming language comparisons.
See Run-time type information and Reflective programming
Reserved word
In a computer language, a reserved word (also known as a reserved identifier) is a word that cannot be used as an identifier, such as the name of a variable, function, or label – it is "reserved from use".
See Run-time type information and Reserved word
Run-time type information
In computer programming, run-time type information or run-time type identification (RTTI) is a feature of some programming languages (such as C++, Object Pascal, and Ada) that exposes information about an object's data type at runtime. Run-time type information and run-time type information are C++, class (computer programming), data types and programming language comparisons.
See Run-time type information and Run-time type information
Static cast
In the C++ programming language, static_cast is an operator that performs an explicit type conversion. Run-time type information and static cast are C++.
See Run-time type information and Static cast
Template (C++)
Templates are a feature of the C++ programming language that allows functions and classes to operate with generic types. Run-time type information and Template (C++) are C++.
See Run-time type information and Template (C++)
Time complexity
In theoretical computer science, the time complexity is the computational complexity that describes the amount of computer time it takes to run an algorithm.
See Run-time type information and Time complexity
Type conversion
In computer science, type conversion, type casting, type coercion, and type juggling are different ways of changing an expression from one data type to another. Run-time type information and type conversion are data types.
See Run-time type information and Type conversion
Type inference
Type inference, sometimes called type reconstruction, refers to the automatic detection of the type of an expression in a formal language.
See Run-time type information and Type inference
Type introspection
In computing, type introspection is the ability of a program to examine the type or properties of an object at runtime. Run-time type information and type introspection are programming language comparisons.
See Run-time type information and Type introspection
Typeof
typeof, alternately also typeOf, and TypeOf, is an operator provided by several programming languages to determine the data type of a variable.
See Run-time type information and Typeof
Virtual function
In object-oriented programming such as is often used in C++ and Object Pascal, a virtual function or virtual method is an inheritable and overridable function or method that is dispatched dynamically. Run-time type information and virtual function are C++.
See Run-time type information and Virtual function
See also
Class (computer programming)
- C++ classes
- Class (computer programming)
- Class browser
- Class hierarchy
- Class implementation file
- Class invariant
- Downcasting
- Fragile base class
- Friend class
- Helper class
- Leaf class (computer programming)
- Metaclass
- Multiple inheritance
- Run-time type information
- Virtual inheritance
Programming language comparisons
- Comparison of functional programming languages
- Comparison of multi-paradigm programming languages
- Comparison of programming languages
- Comparison of programming languages (algebraic data type)
- Comparison of programming languages (array)
- Comparison of programming languages (associative array)
- Comparison of programming languages (basic instructions)
- Comparison of programming languages (functional programming)
- Comparison of programming languages (list comprehension)
- Comparison of programming languages (object-oriented programming)
- Comparison of programming languages (string functions)
- Comparison of programming languages (strings)
- Comparison of programming languages (syntax)
- Comparison of programming languages by type system
- Constructor (object-oriented programming)
- Control flow
- Dead store
- Do while loop
- Exception handling syntax
- Fold (higher-order function)
- For loop
- Foreach loop
- Infinite loop
- Map (higher-order function)
- Reflective programming
- Rosetta Code
- Run-time type information
- The Computer Language Benchmarks Game
- Type aliasing
- Type introspection
- Variable-length array
- Variadic function
- Visitor pattern
- While loop
References
[1] https://en.wikipedia.org/wiki/Run-time_type_information
Also known as Dynamic cast, Dynamic casting, Java.lang.ClassCastException, RTTI, Run Time Type Information, RunTime Type Information, Runtime type identification, Type info, Typeid.