标准::矢量使用的字节大小
Byte size used by std::vector
我正在将std::vector
连接到一个需要知道字节大小的 C 程序。
我可以在没有表达式的情况下执行此操作sizeof(vec[0])
吗?
void *dest = get_dest();
std::vector<T> vec;
memcpy(dest, vec.data(), vec.size() * sizeof(vec[0]));
请不要提供C++式的替代品来替代memcpy
。
template<class T, class A>
std::size_t bytes_in_vector( std::vector<T,A>const& v ){
return v.size()*sizeof(T);
}
template<class A>
std::size_t bytes_in_vector( std::vector<bool,A> const& )=delete;
但是,只要T
不bool
,sizeof(vec[0])
就没有什么错。 如果T
bool
则不允许使用memcpy
。
相关文章:
- 从不同线程使用int64的不同字节安全吗
- 使用CMake检测支持的C++标准
- 将Integer转换为4字节的unsined字符矢量(按大端字节顺序)
- 如何理解C++标准N3337中的expr.const.cast子句8
- 在UNIX系统中使用DIR查找文件的字节大小
- "throw expression code" 1e7 >返回 d 是什么?投掷标准::overflow_error( "too big" ) : d;意味 着?
- 编译标准库类型
- 标准是否使用多余的大括号(例如 T{{{10}}})定义列表初始化?
- 如何使用Crypto++并为RSA返回可打印的字节/字符数组
- std::当在256字节边界上写入整数时,流的奇怪行为
- 从 C++ 中的标准输入迭代读取字节
- 为什么标准库不以无锁的方式为 8 字节以下的结构实现 std::atomic?
- 标准::字节在奇数平台上
- 标准::字节的用例
- 生成标准输出仅在 4098 字节输出后调用
- 将字节数组转换为标准数据类型
- 标准::矢量使用的字节大小
- 如何获取标准::wstring 的字节大小
- 用于数据传输的标准字节通信协议
- std::wstring 的标准定义字节序是什么?