Пространства имён
Варианты
Действия

std::align

Материал из cppreference.com

 
 
 
Динамическое управление памятью
Низкий уровень управления памятью
Распределители
Original:
Allocators
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
allocator
allocator_traits(C++11)
allocator_arg_t(C++11)
allocator_arg(C++11)
uses_allocator(C++11)
scoped_allocator_adaptor(C++11)
Неинициализированные хранения
Original:
Uninitialized storage
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
uninitialized_copy
uninitialized_copy_n(C++11)
uninitialized_fill
uninitialized_fill_n
raw_storage_iterator
get_temporary_buffer
return_temporary_buffer
Умные указатели
Original:
Smart pointers
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
unique_ptr(C++11)
shared_ptr(C++11)
weak_ptr(C++11)
auto_ptr(устарело)
owner_less(C++11)
enable_shared_from_this(C++11)
bad_weak_ptr(C++11)
default_delete(C++11)
Поддержка сборки мусора
Original:
Garbage collection support
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
declare_reachable(C++11)
undeclare_reachable(C++11)
declare_no_pointers(C++11)
undeclare_no_pointers(C++11)
pointer_safety(C++11)
get_pointer_safety(C++11)
Разное
Original:
Miscellaneous
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
pointer_traits(C++11)
addressof(C++11)
align(C++11)
C Library
Original:
C Library
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
 
Заголовочный файл <memory>
void* align( std::size_t alignment,

             std::size_t size,
             void*& ptr,

             std::size_t& space );
(начиная с C++11)
Если это возможно, чтобы соответствовать size байт памяти выровнены по alignment в буфер, на который указывает ptr с длиной space, функция изменяет ptr указывать на первый возможный адрес такого выровнены хранения и уменьшается space на количество байт, используемых для выравнивания. Если это невозможно (буфер слишком мал), align ничего не делает.
Original:
If it is possible to fit size bytes of storage aligned by alignment into the buffer pointed to by ptr with length space, the function modifies ptr to point to the first possible address of such aligned storage and decreases space by the number of bytes used for alignment. If it is impossible (the buffer is too small), align does nothing.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Содержание

[править] Параметры

alignment -
желаемого выравнивания
Original:
the desired alignment
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
size -
размер хранилища быть выровнены
Original:
the size of the storage to be aligned
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
ptr -
указатель на смежные хранения, по крайней мере байт space
Original:
pointer to contiguous storage of at least space bytes
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
space -
размер буфера, в котором работают
Original:
the size of the buffer in which to operate
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

[править] Возвращаемое значение

Скорректированная значение ptr, или нулевое значение указателя, если отведенном для этого месте слишком мал.
Original:
The adjusted value of ptr, or null pointer value if the space provided is too small.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

[править] Пример

[править] См. также

alignof operator queries alignment requirements of a type (начиная с C++11) [edit]
alignas спецификатор
указывает, что для хранения переменной должны быть согласованы конкретные (C++11) сумму
Original:
specifies that the storage for the variable should be aligned by specific amount (C++11)
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
[edit]
определяет тип подходит для использования в качестве неинициализированные для хранения типов заданного размера
Original:
defines the type suitable for use as uninitialized storage for types of given size
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(шаблон класса) [edit]