c++ - boost mapped_file_sink 抛出异常

标签 c++ boost

我不知道为什么在创建 mapped_file_sink 对象时会抛出异常。

异常(exception):

terminate called after throwing an instance of 
'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<std::exception> >'
int main(int argc,char *argv[])
{
        boost::iostreams::mapped_file_sink sink(argv[1]);
        char temp[] ="AAAA";
        memcpy(sink.data(), temp, sizeof(temp));
        sink.close();
        return 1;
}

最佳答案

很可能文件 AAAA 不存在。为了创建文件,您需要使用 boost::iostreams::mapped_file_params 变量打开内存映射文件,该变量的 new_file_size 字段将设置为所需的文件大小。

关于c++ - boost mapped_file_sink 抛出异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7993049/

相关文章:

c++ - 如何使用 boost::filesystem 计算目录中的文件数?

c++ - 创建变量之间的运算符排列

C++ memcpy 访问冲突大块内存

python - OpenCV createCalibrateDebevec.process 给我 "dst is not a numpy array, neither a scalar"

c++ - 在循环中将相同的 unique_ptr 移动到函数中

c++ - 将 header .hpp 文件手动复制到我的 project_root/boost 库中是否正确?

c++ - 使用克隆(): segmentation fault

c++ - boost/thread.hpp 失败并显示 'clang++ -std=c++11 -stdlib=libc++'

c++ - 使用boost spirit解析中间有非数字的整数

c++ - boost odeint有蛙跳算法吗?