2016-09-20 4 views
1

私はstd :: arrayオブジェクトでビット単位のデータ変換を使用したいと思います。このためには、配列のアドレスを格納するのが安全かどうか、またはデータの場所を変更する関数があるかどうかを知る必要があります。例:std :: arrayデータにアドレスでアクセスするのは安全ですか?

std::array<int, 100> array; 
int* startMarker = array.data(); 
(filing the array and doing operations on it) 
std::cout << *startMarker << std::endl; 

回答ありがとうございます。

+0

'std :: array'は、基本的に古典的なC配列を囲む薄いラッパーです。あなたはC配列でできることは何でもできますし、 'std :: vector'でできることはすべてそれをサイズ変更することができます。 –

答えて

6

std::arrayは固定サイズであり、内部データ要素のアドレスは安定しています(std::vectorとは異なります)。

はい、これらのアドレスを保存するのは安全です。

関連する問題