首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >boost file_mapping异常

boost file_mapping异常
EN

Stack Overflow用户
提问于 2013-12-13 10:05:27
回答 1查看 123关注 0票数 0

代码以未知的原因崩溃。我真的不知道为什么,我试着在另一台电脑上运行这个程序,甚至开始一个新的项目,但什么也没有。我也重新编译了boost。

代码语言:javascript
复制
try
{
    cout << "A " << file_name << endl;//fine
    file_mapping m_file(file_name, read_only);
    mapped_region region(m_file, read_only);
} catch (interprocess_exception e)
{
    cout << "B|" << file_name << "| ";//empty???
    cout << e.what() << endl;
}

文件名100%有效,const char*,代码退出:

代码语言:javascript
复制
A C:\file
B || The system cannot find the file path specified.

但问题是:这只发生在的一些时候,其他的工作正常!

EN

回答 1

Stack Overflow用户

发布于 2013-12-13 12:11:44

哦,等一下file_name指向陈旧的数据。

尝试将filename更改为std::string。并确保在初始化filenameconst char*仍然有效。

最有可能的是,const char*指向一个不再存在的(堆栈)位置。

如果在启用完全警告的情况下进行编译,您可能会发现这种情况发生在何处(例如,编译器报告“返回对本地的引用”)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20563734

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档