7#ifndef MFRAME_27CD9666_FD9F_478C_983C_06FC70DDE127
8#define MFRAME_27CD9666_FD9F_478C_983C_06FC70DDE127
15#include "./../lang/NonInstantiable.h"
79 static void*
const vNullPointer;
100 return reinterpret_cast<uint32
>(pointer);
110 return reinterpret_cast<uint32
>(pointer);
124 return reinterpret_cast<T*
>(
reinterpret_cast<int>(pointer) +
shift);
138 return reinterpret_cast<T*
>(
reinterpret_cast<uint32
>(pointer) +
shift);
151 return reinterpret_cast<T*
>(
reinterpret_cast<int>(pointer) +
shift);
164 return reinterpret_cast<T*
>(
reinterpret_cast<uint32
>(pointer) +
shift);
176 static inline T*
cast(
void* src) {
177 return static_cast<T*
>(src);
189 static inline T*
cast(uint32 address) {
190 return static_cast<T*
>(
reinterpret_cast<void*
>(address));
202 static void copy(
void* destination,
const void* source,
int length);
213 static void move(
void* destination,
const void* source,
int length);
225 static int compare(
const void* src1,
const void* src2,
int length);
236 static void wipe(
void* src,
int value,
int length);
246 static void wipe(
void* src,
int length);
Definition NonInstantiable.h:29
指標操作工具類別
Definition Pointers.h:36
static T * shift(T *pointer, uint32 shift)
指標位址偏移計算(無符號整數)
Definition Pointers.h:137
static const T * shift(const T *pointer, uint32 shift)
常數地址偏移(無符號整數)
Definition Pointers.h:163
static int getStringLength(const char *src)
取得C字串的長度
static uint32 toSignedInt(const void *pointer)
轉換為整數
Definition Pointers.h:109
static const T * shift(const T *pointer, int shift)
常數地址偏移
Definition Pointers.h:150
static uint32 toUnsignedInt(const void *pointer)
將指標轉換為無符號整數
Definition Pointers.h:99
static void move(void *destination, const void *source, int length)
移動記憶體區塊
static void copy(void *destination, const void *source, int length)
複製記憶體區塊
static T * shift(T *pointer, int shift)
指標位址偏移計算
Definition Pointers.h:123
static void *const & getReferenceNullPointer(void)
獲取空指標的常數引用
static void wipe(void *src, int value, int length)
將記憶體區塊設置為指定值
static int compare(const void *src1, const void *src2, int length)
比較兩記憶體區塊的內容
static T * cast(void *src)
型態轉換輔助方法
Definition Pointers.h:176
static T * cast(uint32 address)
型態轉換
Definition Pointers.h:189
virtual ~Pointers(void) override=default
Destroy the Pointers object.
static void wipe(void *src, int length)
將記憶體區塊清零
Definition Appendable.h:23