Avatar ·

كيفية الحصول على قائمة الملفات في مجلد باستخدام C++؟ (عبر المنصات)

```html السلام عليكم! أنا مطور C++ مبتدئ، وواجهت مشكلة. أحتاج إلى كتابة دالة تحصل على قائمة بجميع الملفات في مجلد معين. أعمل على Windows، لكن أتمنى أن يعمل الكود أيضًا على Linux (أو macOS) دون إعادة كتابته. المشكلة أنني وجدت عدة طرق مختلفة. على سبيل المثال، في Windows توجد دوال WinAPI `FindFirstFile` / `FindNextFile`. وفي Linux — `opendir` / `readdir`. لكن هذا غير مريح أبدًا: كتابة `#ifdef _WIN32` وتكرار الكود. سمعت أنه في C++17 ظهر شيء مثل `std::filesystem`. لكنني لست متأكدًا مما إذا كان يعمل عمليًا. المُصرّف الذي أستخدمه (MSVC 2022) يبدو أنه يدعم C++17، لكنني أخشى ألا يتم تجميعه على الخوادم القديمة أو في الأنظمة المضمنة. هذا مثال لما أحاول فعله (كود وهمي): ```cpp #include #include #include // أي دالة يجب الاستدعاء؟ أريد الحصول على vector بأسماء الملفات. std::vector getFilesInDirectory(const std::st ```