草庐IT

Directory

全部标签

c++ - {} 是传递给需要迭代器(代表某个容器的 std::end() )的函数的有效参数吗?

在boostdirectory_iteratorexample-howtolistdirectoryfilesnotrecursive(参见thisanswer)中是示例代码#include#include#include...usingnamespaceboost::filesystem;for(auto&entry:boost::make_iterator_range(directory_iterator(p),{})){std::cout(p是boost::filesystem::path类型。)在查看documentationformake_iterator_range时,我认

c++ - 常规的c++程序头文件结构?

我知道头文件如何在C++中工作的机制,但我刚刚开始编写包含大量类的更大的opengl程序,我想知道是否存在围绕头文件组织更大程序的“标准”或传统方式或者这在很大程度上只是个人喜好? 最佳答案 1.DivideyourprojectintoModules.2.Makeadirectoryforeachmodule.3.Undereachdirectoryforamodulecreate2subdirectoriesinc/andsrc/whereyouwillplaceyourheaderandsourcefilesresp.4.Cr

c++ - 'Windows.h : No such file or directory"error when changing Platform Toolset to v140_xp

这个问题在这里已经有了答案:HowtotargetWindowsXPinMicrosoftVisualStudioC++[duplicate](2个答案)关闭4年前。我尝试为WindowsXP编译一个应用程序;正常的可执行文件给出错误:"...isnotavalidWin32application."我读到我可以通过将平台工具集更改为VisualStudio2015-WindowsXP(v140_xp)来创建与XP兼容的可执行文件,但是当我这样做然后尝试编译时,它给了我以下错误:Cannotopenincludefile:'Windows.h':Nosuchfileordirector

c++ - Visual Studio 作为代码浏览器 : How to preserve the directory structure?

我下载了一个开源C++项目的源代码。这是一个Linux项目。由于VisualStudio是我最喜欢的IDE,我想用它来浏览和研究代码。我创建了一个空的C++项目,现在想将源代码添加到解决方案资源管理器。如何将目录结构添加到“解决方案资源管理器”。在解决方案资源管理器中将源代码的根文件夹拖放到项目上不起​​作用。它只是将文件添加到项目中,但目录结构丢失了。有什么办法可以保留目录结构吗?我不想手动重新创建目录结构。 最佳答案 如果您将项目文件添加到项目根目录,然后在“解决方案资源管理器”面板中切换到“显示所有文件”(选择项目中的文件),

c++ - 如何指定 QFileDialog::getExistingDirectory() 方法?

使用方法/命令:OpenCreateDirectory(){QStringDirectory=QFileDialog::getExistingDirectory(this,tr("ChooseOrCreateDirectory"),"/home",QFileDialog::DontResolveSymlinks);}我可以创建一个新目录或选择一个现有目录。有没有办法禁用创建新目录的可能性?另外,有没有办法禁止选择现有目录的可能性?更准确地说:当我使用上述方法时,会弹出一个窗口,我可以在其中创建一个新目录或打开一个现有目录。我想做的是限制方法,这样我就可以创建一个新目录而不能打开现有目录

C++从用户输入更改工作目录

我正在设计一个模拟shell程序,但我不能完全模仿“cd”命令。我试过chdir(),但没有用,所以我继续尝试更改环境变量“PWD=”这是我所拥有的,我认为这可能很接近。(如果我错了或者更接近chdir(),请纠正我)elseif(command=="cd"){stringpathEnv="PWD=";stringnewDir;cin>>newDir;pathEnv+=newDir;cout希望命令是“cd/user/username/folder”,我的pathEnv变量是“PWD=/user/username/folder”,这可能会改变目录?非常感谢任何见解。

c++ - 如何使用 boost::fs 只加载 30 个最新文件而不是整个目录?

刚开始使用boost。使用它来加载图像集合。问题是文件夹中的图像数量会继续增加,我最终不想将它们全部添加到我的显示程序中。我在OSX上使用C++。如何调整此示例代码以仅加载目录顶部或底部的30张图像?只加载最新的文件会很棒,但我会满足于只改变它。不幸的是,在我的循环中只是说(it示例代码:fs::pathpPhoto(photobooth_texture_path);for(fs::directory_iteratorit(pPhoto);it!=fs::directory_iterator();++it){if(fs::is_regular_file(*it)){//--Perhap

C++ Visual Studio 当前工作目录

我也有类似的问题:Currentworkingdirectoryisvisualstudiodirectory除了我在VisualStudio中处理C++项目。有什么建议吗?例如,如果我尝试以下帖子中的解决方案:GetCurrentDirectoryforstartupApp.c++我明白了:"C:\PROGRAMFILES(X86)\MICROSOFTVISUALSTUDIO11.0\COMMON7\IDE"但我希望它成为我的项目/解决方案文件夹下的Debug文件夹。 最佳答案 使用_fullpathcommand允许我提取当前目

C++ - 加载所有文件名+计算当前目录中的文件数+过滤文件扩展名

我想计算当前目录中的文件数以及加载数组中的所有文件名。如果可能的话,我也想知道如何过滤文件扩展名 最佳答案 将以下程序与-lboost_filesystem链接#include#include#include#include#includeintmain(intargc,char**argv){std::stringext=".jpg";std::vectorfiles;for(boost::filesystem::directory_iteratorit(boost::filesystem::initial_path());it!

c++ - 是否有比使用 C++ 的 FindFirstFile/FindNextFile 更快的枚举文件夹的替代方法?

我需要获取文件夹中子文件夹的所有路径(使用WinAPI和C++。)到目前为止,我找到的唯一解决方案是递归调用FindFirstFile/FindNextFile但是在具有更深层次结构的文件夹上执行此操作需要花费大量时间。所以我想知道,只是为了获取文件夹名称,是否有更快的方法? 最佳答案 如果你真的只需要子文件夹,你应该能够使用FindFirstFileExsearchoptions过滤掉非目录。文档建议这只是一个建议标志,但您的文件系统可能支持此优化-试一试。FindExSearchLimitToDirectoriesThisisa