The term container is used in software development, but also in network technology and online services. In general, containers are containers that hold objects of the same type. This can refer to file formats in which bit streams are combined for transmission. The term container format is used in file formats for audio, video, and copy protection, as well as in the Synchronous Digital Hierarchy( SDH).
- In software development, a container is an object that in turn holds objects of the same type. A class with the main task of managing objects is called a container. Examples are lists, vectors and associative fields. In general, objects can be inserted into and removed from a container. A container is an abstract object that stores data of the same type. Here, a container organizes the required storage space and provides methods - also called element functions - to access the data. The data is accessed either directly or via iterators, which can be used to access individual data elements of the container. Since software development often requires structures of the same kind, containers map these structures - data and functions - on a higher level, as it were. Containers are based on templates, which means that any data types can be stored in the containers. In addition, many containers have similar element functions to process data. The concept of containers in C++ and Java distinguishes in
- Sequential containers,
- container adaptors and
- Associative Containers.
- In the SDH hierarchy, containers are bit streams of input bit rates. A container is understood to be the basic packing unit, the payload capacity for the tributary units( TU). The bit rate of a container is nominally synchronous with the basic SDH data rate. By adding a path overhead( POH), the container becomes a virtual container.