ELC in dev
ELC-lang
载入中...
搜索中...
未找到
elc::defs::base::math::unique_prime_factorization_table_t< number_T, number > 模板结构体 参考
elc::defs::base::math::unique_prime_factorization_table_t< number_T, number > 的协作图:
[图例]

Public 类型

typedef unique_prime_factorization_table_t< number_T, numberthis_t
 

Public 成员函数

constexpr unique_prime_factorization_table_t () noexcept
 
constexpr number_T operator[] (size_t index) const noexcept
 
constexpr number_T * begin () noexcept
 
constexpr number_T * end () noexcept
 
constexpr const number_T * begin () const noexcept
 
constexpr const number_T * end () const noexcept
 
constexpr size_t size () const noexcept
 

Public 属性

number_T _table [table_size] ={}
 

静态 Public 属性

static constexpr size_t table_size
 

友元

template<class T >
requires (type_info<remove_cv<T>> == type_info<number_T>)
auto size_of_array_like (const this_t &) noexcept
 
template<class T >
requires (type_info<remove_cv<T>> == type_info<number_T>)
auto begin_of_array_like (this_t &table) noexcept
 
template<class T >
requires (type_info<remove_cv<T>> == type_info<number_T>)
auto end_of_array_like (this_t &table) noexcept
 
template<class T >
requires (type_info<remove_cv<T>> == type_info<number_T>)
auto begin_of_array_like (const this_t &table) noexcept
 
template<class T >
requires (type_info<remove_cv<T>> == type_info<number_T>)
auto end_of_array_like (const this_t &table) noexcept
 

详细描述

template<unsigned_integer_type number_T, number_T number>
struct elc::defs::base::math::unique_prime_factorization_table_t< number_T, number >

在文件 all_defs.cpp5080 行定义.

成员类型定义说明

◆ this_t

template<unsigned_integer_type number_T, number_T number>
typedef unique_prime_factorization_table_t<number_T,number> elc::defs::base::math::unique_prime_factorization_table_t< number_T, number >::this_t

在文件 all_defs.cpp5081 行定义.

构造及析构函数说明

◆ unique_prime_factorization_table_t()

template<unsigned_integer_type number_T, number_T number>
constexpr elc::defs::base::math::unique_prime_factorization_table_t< number_T, number >::unique_prime_factorization_table_t ( )
inlineconstexprnoexcept

在文件 all_defs.cpp5095 行定义.

5095 {
5096 number_T i=2,m=number;
5097 size_t index=0;
5098 while(m!=1){
5099 if(!(m%i)){
5100 _table[index++]=i;
5101 do m/=i;while(!(m%i));
5102 }
5104 }
5105 }
constexpr auto get_prime_num_big_than(T a) noexcept
求大于某数的素数
constexpr T down_cast(U a) noexcept
向下转型至
函数调用图:

成员函数说明

◆ begin() [1/2]

template<unsigned_integer_type number_T, number_T number>
constexpr const number_T * elc::defs::base::math::unique_prime_factorization_table_t< number_T, number >::begin ( ) const
inlineconstexprnoexcept

在文件 all_defs.cpp5116 行定义.

5116 {
5117 return _table;
5118 }

◆ begin() [2/2]

template<unsigned_integer_type number_T, number_T number>
constexpr number_T * elc::defs::base::math::unique_prime_factorization_table_t< number_T, number >::begin ( )
inlineconstexprnoexcept

在文件 all_defs.cpp5110 行定义.

5110 {
5111 return _table;
5112 }

◆ end() [1/2]

template<unsigned_integer_type number_T, number_T number>
constexpr const number_T * elc::defs::base::math::unique_prime_factorization_table_t< number_T, number >::end ( ) const
inlineconstexprnoexcept

在文件 all_defs.cpp5119 行定义.

5119 {
5120 return _table+table_size;
5121 }

◆ end() [2/2]

template<unsigned_integer_type number_T, number_T number>
constexpr number_T * elc::defs::base::math::unique_prime_factorization_table_t< number_T, number >::end ( )
inlineconstexprnoexcept

在文件 all_defs.cpp5113 行定义.

5113 {
5114 return _table+table_size;
5115 }

◆ operator[]()

template<unsigned_integer_type number_T, number_T number>
constexpr number_T elc::defs::base::math::unique_prime_factorization_table_t< number_T, number >::operator[] ( size_t  index) const
inlineconstexprnoexcept

在文件 all_defs.cpp5106 行定义.

5106 {
5107 return _table[index];
5108 }

◆ size()

template<unsigned_integer_type number_T, number_T number>
constexpr size_t elc::defs::base::math::unique_prime_factorization_table_t< number_T, number >::size ( ) const
inlineconstexprnoexcept

在文件 all_defs.cpp5123 行定义.

5123 {
5124 return table_size;
5125 }

友元及相关函数文档

◆ begin_of_array_like [1/2]

template<unsigned_integer_type number_T, number_T number>
template<class T >
requires (type_info<remove_cv<T>> == type_info<number_T>)
auto begin_of_array_like ( const this_t table)
friend

在文件 all_defs.cpp5140 行定义.

5140 {
5141 return table.begin();
5142 }

◆ begin_of_array_like [2/2]

template<unsigned_integer_type number_T, number_T number>
template<class T >
requires (type_info<remove_cv<T>> == type_info<number_T>)
auto begin_of_array_like ( this_t table)
friend

在文件 all_defs.cpp5132 行定义.

5132 {
5133 return table.begin();
5134 }

◆ end_of_array_like [1/2]

template<unsigned_integer_type number_T, number_T number>
template<class T >
requires (type_info<remove_cv<T>> == type_info<number_T>)
auto end_of_array_like ( const this_t table)
friend

在文件 all_defs.cpp5144 行定义.

5144 {
5145 return table.end();
5146 }

◆ end_of_array_like [2/2]

template<unsigned_integer_type number_T, number_T number>
template<class T >
requires (type_info<remove_cv<T>> == type_info<number_T>)
auto end_of_array_like ( this_t table)
friend

在文件 all_defs.cpp5136 行定义.

5136 {
5137 return table.end();
5138 }

◆ size_of_array_like

template<unsigned_integer_type number_T, number_T number>
template<class T >
requires (type_info<remove_cv<T>> == type_info<number_T>)
auto size_of_array_like ( const this_t )
friend

在文件 all_defs.cpp5128 行定义.

5128 {
5129 return table_size;
5130 }

类成员变量说明

◆ _table

template<unsigned_integer_type number_T, number_T number>
number_T elc::defs::base::math::unique_prime_factorization_table_t< number_T, number >::_table[table_size] ={}

在文件 all_defs.cpp5094 行定义.

5094{};

◆ table_size

template<unsigned_integer_type number_T, number_T number>
constexpr size_t elc::defs::base::math::unique_prime_factorization_table_t< number_T, number >::table_size
staticconstexpr
初始值:
=λ{
number_T i=2,m=number;
size_t aret=0;
while(m!=1){
if(!(m%i)){
++aret;
do m/=i;while(!(m%i));
}
}
return aret;
}()
#define λ
Definition all_defs.cpp:623

在文件 all_defs.cpp5082 行定义.

5082 {
5083 number_T i=2,m=number;
5084 size_t aret=0;
5085 while(m!=1){
5086 if(!(m%i)){
5087 ++aret;
5088 do m/=i;while(!(m%i));
5089 }
5091 }
5092 return aret;
5093 }();

该结构体的文档由以下文件生成: