__gnu_cxx::_Relative_pointer_impl< _Tp > Class Template Reference

`#include <pointer.h>`

## Public Types

typedef _Tp | element_type

## Public Member Functions

_Tp * | get () const
bool | operator< (const _Relative_pointer_impl &__rarg) const
bool | operator== (const _Relative_pointer_impl &__rarg) const
void | set (_Tp *__arg)

## Detailed Description

template<typename _Tp>
class __gnu_cxx::_Relative_pointer_impl< _Tp >

A storage policy for use with _Pointer_adapter<> which stores the pointer's address as an offset value which is relative to its own address.

This is intended for pointers within shared memory regions which might be mapped at different addresses by different processes. For null pointers, a value of 1 is used. (0 is legitimate sometimes for nodes in circularly linked lists) This value was chosen as the least likely to generate an incorrect null, As there is no reason why any normal pointer would point 1 byte into its own pointer address.

Definition at line 115 of file pointer.h.

## Member Typedef Documentation

## element_type

template<typename _Tp >

typedef _Tp __gnu_cxx::_Relative_pointer_impl< _Tp >::element_type

Definition at line 118 of file pointer.h.

## Member Function Documentation

## get()

template<typename _Tp >

_Tp * __gnu_cxx::_Relative_pointer_impl< _Tp >::get | ( |  | ) | const

inline

Definition at line 121 of file pointer.h.

## operator<()

template<typename _Tp >

bool __gnu_cxx::_Relative_pointer_impl< _Tp >::operator< | ( | const _Relative_pointer_impl< _Tp > & | __rarg | ) | const

inline

Definition at line 141 of file pointer.h.

## operator==()

template<typename _Tp >

bool __gnu_cxx::_Relative_pointer_impl< _Tp >::operator== | ( | const _Relative_pointer_impl< _Tp > & | __rarg | ) | const

inline

Definition at line 147 of file pointer.h.

## set()

template<typename _Tp >

void __gnu_cxx::_Relative_pointer_impl< _Tp >::set | ( | _Tp * | __arg | ) |

inline

Definition at line 131 of file pointer.h.

The documentation for this class was generated from the following file:

- pointer.h