CArray< T >模板类参考


详细描述

template<class T>
class shogun::CArray< T >

Template class Array implements a dense one dimensional array.

Note that depending on compile options everything will be inlined, such that this is as high performance array implementation without error checking.

在文件Array.h80行定义。

继承图,类CArray< T >
Inheritance graph
[图例]

所有成员的列表。

公有成员

 CArray (int32_t initial_size=1)
 CArray (T *p_array, int32_t p_array_size, bool p_free_array=true, bool p_copy_array=false)
 CArray (const T *p_array, int32_t p_array_size)
virtual ~CArray ()
virtual const char * get_name () const
void set_name (const char *p_name)
int32_t get_array_size () const
int32_t get_dim1 ()
void zero ()
void set_const (T const_elem)
const T & get_element (int32_t index) const
bool set_element (const T &p_element, int32_t index)
const T & element (int32_t idx1) const
T & element (int32_t index)
T & element (T *p_array, int32_t index)
bool resize_array (int32_t n)
T * get_array ()
void set_array (T *p_array, int32_t p_array_size, bool p_free_array=true, bool copy_array=false)
void set_array (const T *p_array, int32_t p_array_size)
void clear_array ()
const T & operator[] (int32_t index) const
T & operator[] (int32_t index)
CArray< T > & operator= (const CArray< T > &orig)
void display_size () const
void display_array () const

保护属性

T * array
int32_t array_size
bool free_array
const char * name
 DECLARE_ARRAY_STATISTICS

构造及析构函数文档

CArray ( int32_t  initial_size = 1  ) 

constructor

参数:
initial_size initial size of array

在文件Array.h87行定义。

CArray ( T *  p_array,
int32_t  p_array_size,
bool  p_free_array = true,
bool  p_copy_array = false 
)

constructor

参数:
p_array another array
p_array_size size of another array
p_free_array if array must be freed
p_copy_array if array must be copied

在文件Array.h103行定义。

CArray ( const T *  p_array,
int32_t  p_array_size 
)

constructor

参数:
p_array another array
p_array_size size of another array

在文件Array.h116行定义。

virtual ~CArray (  )  [virtual]

在文件Array.h123行定义。


成员函数文档

void clear_array (  ) 

clear the array (with zeros)

在文件Array.h315行定义。

void display_array (  )  const
void display_size (  )  const
T& element ( T *  p_array,
int32_t  index 
)

get element of given array at given index

参数:
p_array another array
index index
返回:
element of given array at given index

在文件Array.h235行定义。

T& element ( int32_t  index  ) 

get element at given index

参数:
index index
返回:
element at given index

在文件Array.h220行定义。

const T& element ( int32_t  idx1  )  const

get element at given index

参数:
idx1 index
返回:
element at given index

在文件Array.h209行定义。

T* get_array (  ) 

call get_array just before messing with it DO NOT call any [],resize/delete functions after get_array(), the pointer may become invalid!

返回:
the array

CArray2< T >CArray3< T >CArray2< CPlifBase * >CArray2< float64_t >CArray2< float32_t >CArray2< int32_t >CArray3< float64_t >重载。

在文件Array.h269行定义。

int32_t get_array_size (  )  const

get array size (including granularity buffer)

返回:
total array size

在文件Array.h150行定义。

int32_t get_dim1 (  ) 

get array size (including granularity buffer)

返回:
total array size

CArray2< T >CArray3< T >CArray2< CPlifBase * >CArray2< float64_t >CArray2< float32_t >CArray2< int32_t >CArray3< float64_t >重载。

在文件Array.h159行定义。

const T& get_element ( int32_t  index  )  const

get array element at index

参数:
index index
返回:
array element at index

在文件Array.h183行定义。

virtual const char* get_name (  )  const [virtual]

get name

返回:
name

实现了CSGObject

在文件Array.h135行定义。

CArray<T>& operator= ( const CArray< T > &  orig  ) 

operator overload for array assignment

参数:
orig original array
返回:
new array

CArray3< T >重载。

在文件Array.h353行定义。

T& operator[] ( int32_t  index  ) 

operator overload for array read only access

DOES NOT DO ANY BOUNDS CHECKING

参数:
index 
返回:
element at index

在文件Array.h342行定义。

const T& operator[] ( int32_t  index  )  const

operator overload for array read only access use set_element() for write access (will also make the array dynamically grow)

DOES NOT DO ANY BOUNDS CHECKING

参数:
index 
返回:
element at index

在文件Array.h329行定义。

bool resize_array ( int32_t  n  ) 

resize array

参数:
n new size
返回:
if resizing was successful

在文件Array.h248行定义。

void set_array ( const T *  p_array,
int32_t  p_array_size 
)

set the array pointer and free previously allocated memory

参数:
p_array another array
p_array_size size of another array

在文件Array.h304行定义。

void set_array ( T *  p_array,
int32_t  p_array_size,
bool  p_free_array = true,
bool  copy_array = false 
)

set the array pointer and free previously allocated memory

参数:
p_array another array
p_array_size size of another array
p_free_array if array must be freed
copy_array if array must be copied

在文件Array.h282行定义。

void set_const ( const_elem  ) 
bool set_element ( const T &  p_element,
int32_t  index 
)

set array element at index 'index' return false in case of trouble

参数:
p_element array element to set
index index
返回:
if setting was successful

在文件Array.h196行定义。

void set_name ( const char *  p_name  ) 

set name

参数:
p_name new name

CArray2< T >CArray3< T >CArray2< CPlifBase * >CArray2< float64_t >CArray2< float32_t >CArray2< int32_t >CArray3< float64_t >重载。

在文件Array.h141行定义。

void zero (  ) 

成员数据文档

T* array [protected]

memory for dynamic array

在文件Array.h379行定义。

int32_t array_size [protected]

the number of potentially used elements in array

在文件Array.h381行定义。

array statistics

在文件Array.h387行定义。

bool free_array [protected]

if array must be freed

在文件Array.h383行定义。

const char* name [protected]

array's name

在文件Array.h385行定义。


该类的文档由以下文件生成:

SHOGUN Machine Learning Toolbox - Documentation