本文整理汇总了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);
}