【发布时间】:2016-08-04 12:40:52
【问题描述】:
考虑这个函数:
po::parsed_options ParserClass::parseOptions(int argc, char *argv[]) {
return po::command_line_parser(argc, argv)
.options(desc)
.positional(pos)
.run();
}
desc 和pos 是ParserClass 的成员变量。
这个函数是安全的还是返回一个parsed_options 对象,该对象的指针指向释放的空闲存储内存,因为函数返回时释放了原始对象分配的内存?
你怎么知道语义?我试图阅读源代码以找出答案,但这对我来说有点神秘。文档似乎没有说明。
如果函数不安全,如何修复?是否应该扩展类并定义移动操作?
【问题讨论】:
标签: c++ boost boost-program-options