xcal
基于 C++23 的现代图形渲染引擎
载入中...
搜索中...
未找到
| Public 类型 | Public 成员函数 | 静态 Public 属性 | Protected 属性 | 所有成员列表
xcmath::vec< _Tp, _length > 模板类 参考

Vector class template 更多...

#include <vec.hpp>

类 xcmath::vec< _Tp, _length > 继承关系图:
[图例]

struct  __subVecHelper
 Metafunction for type transformation 更多...
 
struct  __subVecHelper< size_t, __len >
 
struct  __subVecHelper< size_t, __len, __lens... >
 

Public 类型

using ItemType = _Tp
 Type of elements in the vector
 
using DataType = typename VecInfo< ItemType >::DataType
 Type of data stored in the vector
 
template<size_t __len, size_t... __lens>
using SubVec = __subVecHelper< size_t, __len, __lens... >::Type
 
template<class _T >
using Self = vec< _T, _length >
 

Public 成员函数

constexpr vec ()
 Construct a zero-initialized vector Notw: _Tp must be default constructible
 
template<class _Tp1 , class... _T>
requires (std::is_convertible_v<_Tp1, _Tp> && (std::is_convertible_v<_T, _Tp> && ...))
constexpr vec (const _Tp1 &arg1, const _T &... args)
 Construct from component values
 
template<typename... _Args>
requires ((VecConstructPackSize<_Args...> <= _length && VecConstructPackSize<_Args...> > 1) && ((VecItem<_Args, ItemType> || std::is_convertible_v<_Args, ItemType>) && ...))
constexpr vec (const _Args &... args)
 Construct from mixed scalars and vectors
 
template<class T >
requires (std::is_convertible_v<T, ItemType>)
constexpr vec (const T &fill_value)
 Uniform value constructor
 
constexpr vec (const vec< _Tp, _length > &other)
 Copy constructor
 
constexpr vec (vec< _Tp, _length > &&o)
 Move constructor
 
constexpr vec (const std::initializer_list< ItemType > &list)
 
constexpr const _Tp * begin () const
 Get pointer to the beginning of the data array
 
constexpr const _Tp * end () const
 Get pointer to the end of the data array
 
constexpr _Tp & operator[] (size_t index)
 Access element at specified index
 
constexpr const _Tp & operator[] (size_t index) const
 Access element at specified index (const version)
 
constexpr vec< _Tp, _length > & operator= (const vec< _Tp, _length > &o)
 Copy assignment operator
 
constexpr vec< _Tp, _length > & operator= (vec< _Tp, _length > &&o)
 Move assignment operator
 
template<size_t... idx, class... _Ss>
requires (sizeof...(_Ss) < dim)
constexpr SubVec< sizeof...(idx),(_Ss::length,...)> operator() (Slice< idx... >, _Ss... ns) const
 qualified operator() for slicing and swizzling
 
template<size_t... idx>
constexpr vec< ItemType, sizeof...(idx)> operator() (Slice< idx... > s) const
 qualified operator() for slicing and swizzling (const version)
 
constexpr _Tp & x ()
 Get the item at index 0
 
constexpr _Tp & y ()
 Get the item at index 1
 
constexpr _Tp & z ()
 Get the item at index 2
 
constexpr _Tp & w ()
 Get the item at index 3
 
constexpr const _Tp & x () const
 Get the item at index 0 (const version)
 
constexpr const _Tp & y () const
 Get the item at index 1 (const version)
 
constexpr const _Tp & z () const
 Get the item at index 2 (const version)
 
constexpr const _Tp & w () const
 Get the item at index 3 (const version)
 
constexpr const vec< _Tp, 2 > & xy () const
 
constexpr vec< _Tp, 2 > & xy ()
 
constexpr const vec< _Tp, 2 > & yz () const
 
constexpr vec< _Tp, 2 > & yz ()
 
constexpr const vec< _Tp, 2 > & zw () const
 
constexpr vec< _Tp, 2 > & zw ()
 
constexpr const vec< _Tp, 3 > & xyz () const
 
constexpr vec< _Tp, 3 > & xyz ()
 
constexpr const vec< _Tp, 3 > & yzw () const
 
constexpr vec< _Tp, 3 > & yzw ()
 
constexpr vec< _Tp, 2 > xz () const
 
constexpr vec< _Tp, 2 > xw () const
 
constexpr vec< _Tp, 2 > yw () const
 
constexpr vec< _Tp, _length > cross (const vec< _Tp, _length > &other) const
 Compute 3D cross product
 
constexpr _Tp dot (const vec< _Tp, _length > &other) const
 Compute Euclidean inner product
 
constexpr vec< _Tp, _length > normalize () const
 Create unit vector in same direction
 
constexpr _Tp distance (const vec< _Tp, _length > &other) const
 Compute distance to another vector
 
constexpr _Tp mod () const
 Calculate Euclidean norm (magnitude)
 
constexpr _Tp angle (const vec< _Tp, _length > &other) const
 Compute angle with another vector
 
constexpr bool any () const
 Check if any element satisfies a condition
 
constexpr bool every () const
 Check if all elements satisfy a condition
 
constexpr bool all () const
 Check universal quantification of components
 
template<typename _OTp >
requires (std::is_convertible_v<ItemType, _OTp>)
constexpr operator Self< _OTp > () const
 
auto operator- () const
 Component-wise additive inverse
 
auto operator+ () const
 Unary plus operator
 
auto operator-- ()
 Pre-decrement operator
 
auto & operator-- (int)
 Post-decrement operator
 
auto operator++ ()
 Pre-increment operator
 
auto & operator++ (int)
 Post-increment operator
 

静态 Public 属性

static constexpr size_t dim = VecInfo<ItemType>::dim + 1
 
static constexpr auto datatype = TypeName<DataType>
 Name of the data type
 
static constexpr auto itemtype = TypeName<ItemType>
 Name of the item type
 
static constexpr auto length = _length
 Length of the vector
 

Protected 属性

_Tp data [_length]
 Component storage array
 

详细描述

template<typename _Tp, size_t _length>
requires (_length > 0 && std::is_default_constructible_v<_Tp>)
class xcmath::vec< _Tp, _length >

Vector class template

N-dimensional mathematical vector template

模板参数
_TpType of elements in the vector
_lengthLength of the vector
_TpArithmetic type of vector components
_lengthDimension of the vector (1-4 for swizzle operations) Notw: _Tp must be default constructible and support basic arithmetic operations

Provides:

在文件 vec.hpp206 行定义.

成员类型定义说明

◆ DataType

template<typename _Tp , size_t _length>
using xcmath::vec< _Tp, _length >::DataType = typename VecInfo<ItemType>::DataType

Type of data stored in the vector

在文件 vec.hpp223 行定义.

◆ ItemType

template<typename _Tp , size_t _length>
using xcmath::vec< _Tp, _length >::ItemType = _Tp

Type of elements in the vector

在文件 vec.hpp218 行定义.

◆ Self

template<typename _Tp , size_t _length>
template<class _T >
using xcmath::vec< _Tp, _length >::Self = vec<_T, _length>

在文件 vec.hpp251 行定义.

◆ SubVec

template<typename _Tp , size_t _length>
template<size_t __len, size_t... __lens>
using xcmath::vec< _Tp, _length >::SubVec = __subVecHelper<size_t, __len, __lens...>::Type

在文件 vec.hpp245 行定义.

构造及析构函数说明

◆ vec() [1/7]

template<typename _Tp , size_t _length>
constexpr xcmath::vec< _Tp, _length >::vec ( )
inlineconstexpr

Construct a zero-initialized vector Notw: _Tp must be default constructible

在文件 vec.hpp273 行定义.

◆ vec() [2/7]

template<typename _Tp , size_t _length>
template<class _Tp1 , class... _T>
requires (std::is_convertible_v<_Tp1, _Tp> && (std::is_convertible_v<_T, _Tp> && ...))
constexpr xcmath::vec< _Tp, _length >::vec ( const _Tp1 &  arg1,
const _T &...  args 
)
inlineconstexpr

Construct from component values

参数
arg1First component value
argsRemaining component values
模板参数
_Tp1Type of first component (must be convertible to _Tp)
_TTypes of remaining components (must be convertible to _Tp) Notw: All arguments must be convertible to component type _Tp
异常
std::out_of_rangeif too many arguments provided

在文件 vec.hpp290 行定义.

◆ vec() [3/7]

template<typename _Tp , size_t _length>
template<typename... _Args>
requires ((VecConstructPackSize<_Args...> <= _length && VecConstructPackSize<_Args...> > 1) && ((VecItem<_Args, ItemType> || std::is_convertible_v<_Args, ItemType>) && ...))
constexpr xcmath::vec< _Tp, _length >::vec ( const _Args &...  args)
inlineexplicitconstexpr

Construct from mixed scalars and vectors

参数
argsComponent initializers (scalars or vectors to flatten)
模板参数
_ArgsVariadic argument types Notw: Total elements from args must exactly match vector length Each argument must be convertible to _Tp or be a vector of _Tp

在文件 vec.hpp310 行定义.

◆ vec() [4/7]

template<typename _Tp , size_t _length>
template<class T >
requires (std::is_convertible_v<T, ItemType>)
constexpr xcmath::vec< _Tp, _length >::vec ( const T &  fill_value)
inlineexplicitconstexpr

Uniform value constructor

参数
fill_valueValue to initialize all components
模板参数
TType of fill value (must be convertible to _Tp)

在文件 vec.hpp329 行定义.

◆ vec() [5/7]

template<typename _Tp , size_t _length>
constexpr xcmath::vec< _Tp, _length >::vec ( const vec< _Tp, _length > &  other)
inlineconstexpr

Copy constructor

参数
otherVector to copy
注解
Performs deep copy of all components

在文件 vec.hpp340 行定义.

◆ vec() [6/7]

template<typename _Tp , size_t _length>
constexpr xcmath::vec< _Tp, _length >::vec ( vec< _Tp, _length > &&  o)
inlineconstexpr

Move constructor

参数
oVector to move from
注解
Component values are moved if _Tp supports move semantics, otherwise copies are performed

在文件 vec.hpp352 行定义.

◆ vec() [7/7]

template<typename _Tp , size_t _length>
constexpr xcmath::vec< _Tp, _length >::vec ( const std::initializer_list< ItemType > &  list)
inlineconstexpr

在文件 vec.hpp358 行定义.

成员函数说明

◆ all()

template<typename _Tp , size_t _length>
constexpr bool xcmath::vec< _Tp, _length >::all ( ) const
inlineconstexpr

Check universal quantification of components

返回
bool True if all elements evaluate to true Notw: DataType must be contextually convertible to bool
注解
This is an alias for every()
参见
every()

在文件 vec.hpp748 行定义.

◆ angle()

template<typename _Tp , size_t _length>
constexpr _Tp xcmath::vec< _Tp, _length >::angle ( const vec< _Tp, _length > &  other) const
inlineconstexpr

Compute angle with another vector

参数
otherVector to compute angle with
返回
Angle value

在文件 vec.hpp687 行定义.

引用了 xcmath::vec< _Tp, _length >::mod().

被这些函数引用 TEST().

◆ any()

template<typename _Tp , size_t _length>
constexpr bool xcmath::vec< _Tp, _length >::any ( ) const
inlineconstexpr

Check if any element satisfies a condition

返回
True if any element satisfies the condition, false otherwise

在文件 vec.hpp697 行定义.

被这些函数引用 TEST().

◆ begin()

template<typename _Tp , size_t _length>
constexpr const _Tp * xcmath::vec< _Tp, _length >::begin ( ) const
inlineconstexpr

Get pointer to the beginning of the data array

返回
Pointer to the first element

在文件 vec.hpp371 行定义.

◆ cross()

template<typename _Tp , size_t _length>
constexpr vec< _Tp, _length > xcmath::vec< _Tp, _length >::cross ( const vec< _Tp, _length > &  other) const
inlineconstexpr

Compute 3D cross product

参数
otherRight-hand operand vector
返回
vec<_Tp,3> Resulting perpendicular vector Notw: _length == 3 (enabled via SFINAE)
注解
Implements the right-hand rule: cross(a, b) = |i j k| |aₓ aᵧ a_z| |bₓ bᵧ b_z|

在文件 vec.hpp617 行定义.

被这些函数引用 lookAt() , 以及 TEST().

◆ distance()

template<typename _Tp , size_t _length>
constexpr _Tp xcmath::vec< _Tp, _length >::distance ( const vec< _Tp, _length > &  other) const
inlineconstexpr

Compute distance to another vector

参数
otherVector to compute distance to
返回
Distance value

在文件 vec.hpp660 行定义.

被这些函数引用 TEST().

◆ dot()

template<typename _Tp , size_t _length>
constexpr _Tp xcmath::vec< _Tp, _length >::dot ( const vec< _Tp, _length > &  other) const
inlineconstexpr

Compute Euclidean inner product

参数
otherRight-hand operand vector
返回
_Tp Scalar result of Σ(a_i * b_i)
注解
For vectors u, v: u·v = |u||v|cosθ

在文件 vec.hpp631 行定义.

被这些函数引用 lookAt() , 以及 TEST().

◆ end()

template<typename _Tp , size_t _length>
constexpr const _Tp * xcmath::vec< _Tp, _length >::end ( ) const
inlineconstexpr

Get pointer to the end of the data array

返回
Pointer past the last element

在文件 vec.hpp378 行定义.

◆ every()

template<typename _Tp , size_t _length>
constexpr bool xcmath::vec< _Tp, _length >::every ( ) const
inlineconstexpr

Check if all elements satisfy a condition

返回
True if all elements satisfy the condition, false otherwise

在文件 vec.hpp721 行定义.

被这些函数引用 TEST().

◆ mod()

template<typename _Tp , size_t _length>
constexpr _Tp xcmath::vec< _Tp, _length >::mod ( ) const
inlineconstexpr

Calculate Euclidean norm (magnitude)

返回
_Tp ||v|| = √(Σv_i²)
注解
Directly computes sqrt(dot(*this))

在文件 vec.hpp673 行定义.

被这些函数引用 xcmath::vec< _Tp, _length >::angle() , 以及 TEST().

◆ normalize()

template<typename _Tp , size_t _length>
constexpr vec< _Tp, _length > xcmath::vec< _Tp, _length >::normalize ( ) const
inlineconstexpr

Create unit vector in same direction

返回
vec<_Tp,_length> Scaled vector with magnitude 1
异常
std::domain_errorif modulus is zero
注解
Normalization formula: û = u / ||u||

在文件 vec.hpp645 行定义.

被这些函数引用 xcmath::rotate() , 以及 TEST().

◆ operator Self< _OTp >()

template<typename _Tp , size_t _length>
template<typename _OTp >
requires (std::is_convertible_v<ItemType, _OTp>)
constexpr xcmath::vec< _Tp, _length >::operator Self< _OTp > ( ) const
inlineconstexpr

在文件 vec.hpp756 行定义.

◆ operator()() [1/2]

template<typename _Tp , size_t _length>
template<size_t... idx>
constexpr vec< ItemType, sizeof...(idx)> xcmath::vec< _Tp, _length >::operator() ( Slice< idx... >  s) const
inlineconstexpr

qualified operator() for slicing and swizzling (const version)

模板参数
idxIndices of the elements to select (0-3 for swizzling, 0-n for slicing)
返回
Subvector or scalar value

在文件 vec.hpp445 行定义.

◆ operator()() [2/2]

template<typename _Tp , size_t _length>
template<size_t... idx, class... _Ss>
requires (sizeof...(_Ss) < dim)
constexpr SubVec< sizeof...(idx),(_Ss::length,...)> xcmath::vec< _Tp, _length >::operator() ( Slice< idx... >  ,
_Ss...  ns 
) const
inlineconstexpr

qualified operator() for slicing and swizzling

模板参数
idxIndices of the elements to select (0-3 for swizzling, 0-n for slicing)
返回
Subvector or scalar value

在文件 vec.hpp433 行定义.

◆ operator+()

template<typename _Tp , size_t _length>
auto xcmath::vec< _Tp, _length >::operator+ ( ) const
inline

Unary plus operator

返回
Vector with elements unchanged

在文件 vec.hpp781 行定义.

◆ operator++() [1/2]

template<typename _Tp , size_t _length>
auto xcmath::vec< _Tp, _length >::operator++ ( )
inline

Pre-increment operator

返回
Copy of the vector before increment

在文件 vec.hpp819 行定义.

◆ operator++() [2/2]

template<typename _Tp , size_t _length>
auto & xcmath::vec< _Tp, _length >::operator++ ( int  )
inline

Post-increment operator

返回
Reference to the incremented vector

在文件 vec.hpp832 行定义.

◆ operator-()

template<typename _Tp , size_t _length>
auto xcmath::vec< _Tp, _length >::operator- ( ) const
inline

Component-wise additive inverse

返回
vec<decltype(-_Tp{}),_length> New vector with -v_i components
注解
Equivalent to vector scaling by -1

在文件 vec.hpp768 行定义.

◆ operator--() [1/2]

template<typename _Tp , size_t _length>
auto xcmath::vec< _Tp, _length >::operator-- ( )
inline

Pre-decrement operator

返回
Copy of the vector before decrement

在文件 vec.hpp794 行定义.

◆ operator--() [2/2]

template<typename _Tp , size_t _length>
auto & xcmath::vec< _Tp, _length >::operator-- ( int  )
inline

Post-decrement operator

返回
Reference to the decremented vector

在文件 vec.hpp807 行定义.

◆ operator=() [1/2]

template<typename _Tp , size_t _length>
constexpr vec< _Tp, _length > & xcmath::vec< _Tp, _length >::operator= ( const vec< _Tp, _length > &  o)
inlineconstexpr

Copy assignment operator

参数
oVector to copy from
返回
Reference to this vector

在文件 vec.hpp405 行定义.

◆ operator=() [2/2]

template<typename _Tp , size_t _length>
constexpr vec< _Tp, _length > & xcmath::vec< _Tp, _length >::operator= ( vec< _Tp, _length > &&  o)
inlineconstexpr

Move assignment operator

参数
oVector to move from
返回
Reference to this vector

在文件 vec.hpp418 行定义.

◆ operator[]() [1/2]

template<typename _Tp , size_t _length>
constexpr _Tp & xcmath::vec< _Tp, _length >::operator[] ( size_t  index)
inlineconstexpr

Access element at specified index

参数
indexIndex of the element
返回
Reference to the element

在文件 vec.hpp386 行定义.

◆ operator[]() [2/2]

template<typename _Tp , size_t _length>
constexpr const _Tp & xcmath::vec< _Tp, _length >::operator[] ( size_t  index) const
inlineconstexpr

Access element at specified index (const version)

参数
indexIndex of the element
返回
Const reference to the element

在文件 vec.hpp394 行定义.

◆ w() [1/2]

template<typename _Tp , size_t _length>
constexpr _Tp & xcmath::vec< _Tp, _length >::w ( )
inlineconstexpr

Get the item at index 3

返回
Reference to the item

在文件 vec.hpp487 行定义.

被这些函数引用 xcal::camera::TEST().

◆ w() [2/2]

template<typename _Tp , size_t _length>
constexpr const _Tp & xcmath::vec< _Tp, _length >::w ( ) const
inlineconstexpr

Get the item at index 3 (const version)

返回
Const reference to the item

在文件 vec.hpp531 行定义.

◆ x() [1/2]

template<typename _Tp , size_t _length>
constexpr _Tp & xcmath::vec< _Tp, _length >::x ( )
inlineconstexpr

Get the item at index 0

返回
Reference to the item

在文件 vec.hpp454 行定义.

被这些函数引用 xcal::mobject::Line::Line(), lookAt(), xcmath::quaternion< _Tp >::quaternion(), Point< T >::setX(), TEST(), TEST(), xcal::camera::TEST() , 以及 Point< T >::x().

◆ x() [2/2]

template<typename _Tp , size_t _length>
constexpr const _Tp & xcmath::vec< _Tp, _length >::x ( ) const
inlineconstexpr

Get the item at index 0 (const version)

返回
Const reference to the item

在文件 vec.hpp498 行定义.

◆ xw()

template<typename _Tp , size_t _length>
constexpr vec< _Tp, 2 > xcmath::vec< _Tp, _length >::xw ( ) const
inlineconstexpr

在文件 vec.hpp596 行定义.

◆ xy() [1/2]

template<typename _Tp , size_t _length>
constexpr vec< _Tp, 2 > & xcmath::vec< _Tp, _length >::xy ( )
inlineconstexpr

在文件 vec.hpp542 行定义.

◆ xy() [2/2]

template<typename _Tp , size_t _length>
constexpr const vec< _Tp, 2 > & xcmath::vec< _Tp, _length >::xy ( ) const
inlineconstexpr

在文件 vec.hpp537 行定义.

被这些函数引用 xcal::property::ThreeDPosition::operator=().

◆ xyz() [1/2]

template<typename _Tp , size_t _length>
constexpr vec< _Tp, 3 > & xcmath::vec< _Tp, _length >::xyz ( )
inlineconstexpr

在文件 vec.hpp575 行定义.

◆ xyz() [2/2]

template<typename _Tp , size_t _length>
constexpr const vec< _Tp, 3 > & xcmath::vec< _Tp, _length >::xyz ( ) const
inlineconstexpr

在文件 vec.hpp570 行定义.

被这些函数引用 xcal::camera::TEST().

◆ xz()

template<typename _Tp , size_t _length>
constexpr vec< _Tp, 2 > xcmath::vec< _Tp, _length >::xz ( ) const
inlineconstexpr

在文件 vec.hpp591 行定义.

◆ y() [1/2]

template<typename _Tp , size_t _length>
constexpr _Tp & xcmath::vec< _Tp, _length >::y ( )
inlineconstexpr

Get the item at index 1

返回
Reference to the item

在文件 vec.hpp465 行定义.

被这些函数引用 xcal::mobject::Line::Line(), lookAt(), xcmath::quaternion< _Tp >::quaternion(), Point< T >::setY(), TEST(), TEST(), xcal::camera::TEST() , 以及 Point< T >::y().

◆ y() [2/2]

template<typename _Tp , size_t _length>
constexpr const _Tp & xcmath::vec< _Tp, _length >::y ( ) const
inlineconstexpr

Get the item at index 1 (const version)

返回
Const reference to the item

在文件 vec.hpp509 行定义.

◆ yw()

template<typename _Tp , size_t _length>
constexpr vec< _Tp, 2 > xcmath::vec< _Tp, _length >::yw ( ) const
inlineconstexpr

在文件 vec.hpp601 行定义.

◆ yz() [1/2]

template<typename _Tp , size_t _length>
constexpr vec< _Tp, 2 > & xcmath::vec< _Tp, _length >::yz ( )
inlineconstexpr

在文件 vec.hpp553 行定义.

◆ yz() [2/2]

template<typename _Tp , size_t _length>
constexpr const vec< _Tp, 2 > & xcmath::vec< _Tp, _length >::yz ( ) const
inlineconstexpr

在文件 vec.hpp548 行定义.

◆ yzw() [1/2]

template<typename _Tp , size_t _length>
constexpr vec< _Tp, 3 > & xcmath::vec< _Tp, _length >::yzw ( )
inlineconstexpr

在文件 vec.hpp585 行定义.

◆ yzw() [2/2]

template<typename _Tp , size_t _length>
constexpr const vec< _Tp, 3 > & xcmath::vec< _Tp, _length >::yzw ( ) const
inlineconstexpr

在文件 vec.hpp580 行定义.

◆ z() [1/2]

template<typename _Tp , size_t _length>
constexpr _Tp & xcmath::vec< _Tp, _length >::z ( )
inlineconstexpr

Get the item at index 2

返回
Reference to the item

在文件 vec.hpp476 行定义.

被这些函数引用 lookAt(), xcmath::quaternion< _Tp >::quaternion(), xcal::mobject::RotatableMObject< T >::rotate(), TEST(), TEST() , 以及 xcal::camera::TEST().

◆ z() [2/2]

template<typename _Tp , size_t _length>
constexpr const _Tp & xcmath::vec< _Tp, _length >::z ( ) const
inlineconstexpr

Get the item at index 2 (const version)

返回
Const reference to the item

在文件 vec.hpp520 行定义.

◆ zw() [1/2]

template<typename _Tp , size_t _length>
constexpr vec< _Tp, 2 > & xcmath::vec< _Tp, _length >::zw ( )
inlineconstexpr

在文件 vec.hpp564 行定义.

◆ zw() [2/2]

template<typename _Tp , size_t _length>
constexpr const vec< _Tp, 2 > & xcmath::vec< _Tp, _length >::zw ( ) const
inlineconstexpr

在文件 vec.hpp559 行定义.

类成员变量说明

◆ data

template<typename _Tp , size_t _length>
_Tp xcmath::vec< _Tp, _length >::data[_length]
protected

Component storage array

Contiguous memory storage following standard vector layout

在文件 vec.hpp212 行定义.

被这些函数引用 xcmath::mat< _Tp, _rows, _cols >::det(), xcmath::mat< _Tp, _rows, _cols >::inv(), xcmath::mat< _Tp, _rows, _cols >::operator^(), xcmath::mat< _Tp, _rows, _cols >::operator^() , 以及 xcmath::mat< _Tp, _rows, _cols >::T().

◆ datatype

template<typename _Tp , size_t _length>
constexpr auto xcmath::vec< _Tp, _length >::datatype = TypeName<DataType>
staticconstexpr

Name of the data type

在文件 vec.hpp256 行定义.

◆ dim

template<typename _Tp , size_t _length>
constexpr size_t xcmath::vec< _Tp, _length >::dim = VecInfo<ItemType>::dim + 1
staticconstexpr

在文件 vec.hpp224 行定义.

◆ itemtype

template<typename _Tp , size_t _length>
constexpr auto xcmath::vec< _Tp, _length >::itemtype = TypeName<ItemType>
staticconstexpr

Name of the item type

在文件 vec.hpp261 行定义.

◆ length

template<typename _Tp , size_t _length>
constexpr auto xcmath::vec< _Tp, _length >::length = _length
staticconstexpr

Length of the vector

在文件 vec.hpp266 行定义.

被这些函数引用 TEST().


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