C++官网参考链接:https://cplusplus.com/reference/array/array/data/
公有成员函数
std::array::data
value_type* data() noexcept;
const value_type* data() const noexcept;
获取指向数据的指针
返回指向array对象中第一个元素的指针。
由于array中的元素存储在连续的存储位置中,因此获取到的指针可以偏移以访问array中的任何元素。
形参
没有形参。
返回值
指向array对象所包含的数据的指针。
如果array对象是const限定的,则该函数返回指向const限定的value_type类型的指针。否则,它返回一个指向value_type的指针。
成员类型value_type是容器中元素的类型,在array中定义为其第一个模板形参(T)的别名。
用例
// array::data
#include
#include
#include
int main ()
{
const char* cstr = "Test string";
std::array
std::memcpy (charray.data(),cstr,12);
std::cout << charray.data() << '\n';
return 0;
}
输出:

复杂度
常量。
iterator的有效性
没有变化。
数据竞争
调用不直接访问包含的元素,但返回的指针可用于访问或修改元素。同时访问或修改不同的元素是安全的。
异常安全
无抛出保证:该成员函数从不抛出异常。