glibmm: Glib::Value< T > Class Template Reference

glibmm 2.36.1

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Examples

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Types | Public Member Functions | Static Public Member Functions | List of all members
Glib::Value< T > Class Template Reference
Generic Values

Generic value implementation for custom types. More...

`#include <glibmm/value_custom.h>`

Inheritance diagram for Glib::Value< T >:
[legend]

## Public Types
typedef T | CppType
typedef T* | CType

## Public Member Functions
void | set (const CppType& data)
CppType | get () const

## Static Public Member Functions
static GType | value_type ()

## Additional Inherited Members
Protected Member Functions inherited from Glib::ValueBase_Boxed
void | set_boxed (const void* data)
void* | get_boxed () const
Protected Attributes inherited from Glib::ValueBase
GValue | gobject_

## Detailed Description

### template<class T>
class Glib::Value< T >

Generic value implementation for custom types.

Any type to be used with this template must implement:

- default constructor
- copy constructor
- assignment operator
- destructor

Compiler-generated implementations are OK, provided they do the right thing for the type. In other words, any type that works with `std::vector` will work with Glib::Value<>.

Note
  None of the operations listed above are allowed to throw. If you cannot ensure that no exceptions will be thrown, consider using either a normal pointer or a smart pointer to hold your objects indirectly.

## Member Typedef Documentation

template <class T >

typedef T Glib::Value< T >::CppType

template <class T >

typedef T* Glib::Value< T >::CType

## Member Function Documentation

template <class T >

CppType Glib::Value< T >::get | ( |  | ) | const
| inline

template <class T >

void Glib::Value< T >::set | ( | const CppType& | data | ) |
| inline

template <class T >

static GType Glib::Value< T >::value_type | ( |  | ) |
| static

Reimplemented from Glib::ValueBase_Boxed.