当前位置: 首页>>代码示例>>C++>>正文


C++ path::assign方法代码示例

本文整理汇总了C++中boost::filesystem::path::assign方法的典型用法代码示例。如果您正苦于以下问题:C++ path::assign方法的具体用法?C++ path::assign怎么用?C++ path::assign使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在boost::filesystem::path的用法示例。


在下文中一共展示了path::assign方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: GetExePath

void GetExePath(int argc, char *argv[], boost::filesystem::path & path, boost::system::error_code & ec)
{
    struct pst_status pst;
    std::memset(&pst, 0, sizeof(pst));

    int res, pid = ::getpid();
    // Acquire proc info, it contains file id of text file(executable)
    res = ::pstat_getproc(&pst, sizeof(pst), 0, pid);
    if (res < 0)
    {
        ec.assign(errno, boost::system::generic_category());
        return;
    }

    pst_fid * fid_text = &pst.pst_fid_text;
    char buffer[PATH_MAX];

    // Now get pathname. According to man pstat_getpathname returns name from system cache,
    // and it actually can be missing this information.
    // In this case function will return 0, errno will be unchanged
    res = ::pstat_getpathname(buffer, PATH_MAX, fid_text);
    if (res < 0)
    {
        ec.assign(errno, boost::system::generic_category());
        return;
    }

    path.assign(buffer, buffer + res);
}
开发者ID:dmlys,项目名称:extlib,代码行数:29,代码来源:FileSystemGetExePath.cpp


注:本文中的boost::filesystem::path::assign方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。