Programming Basics SQL HTML CSS JavaScript React Python C++ Java JavaFX Swing Problem Solving English English Conversations Computer Fundamentals Linux Learn Typing

ما هو سبب خطأ "ios is private" في ++C

السلام عليكم و رحمة الله و بركاته.

أعمل على لعبة بسيطة جداً في الكونسول باستخدام ++C فقط من باب المتعة، و لكن أواجه مشكلة و هي ما يلي.

عندما حاولت عمل دالة مهمتها هي الكتابة في ملفات، هذه الملفات هي ملف للنقود و ملفات أخرى للبضائع. و هذه الدالة عندما أستدعيها أمرر لها ٣ باراميترات.

الباراميتر الأول: هو كائن من الكلاس ofstream للكتابة في الملفات.

الباراميتر الثاني: هو متغير نوعه *const char و هو يمثل موقع الملف الذي أريد من الدالة فتحه باستخدام الباراميتر الأول.

الباراميتر الثالث: هو الخاصية التي أريد حفظها، مثل النقود.

ملاحظة: إذا كان الشرح غير مفهوم، إن شاء لله ستفهمون من الكودات. و هذا جزء من الكودات الخاصة باللعبة.

#include <fstream>
#include <iostream>

using namespace std;

class Game {
 public:
  double money;
  ofstream save_money;

  void save(ofstream writeFile, const char* path, double property) {
    //أشك أن المشكلة من هذا الكود
    writeFile.open(path);

    if (writeFile) {
      writeFile << property;
      writeFile.close();
    } else {
      perror("Error");
    }
  }

  void theGame() {
    string play;

    cout << "what you want to do?\n";
    getline(cin, play);

    if (play == "save") {
      cout << "Saving..\n";
      //هنا استدعيت الدالة التي عرفتها في الأعلى
      save(save_money, "Money.txt", money);
    } else {
      cout << "Not a word\n";
    }
  }
};

int main() {
  Game game;
  game.theGame();

  return 0;
}

النتيجة تشبه هذه، لأنني حقيقة لم أحفظ الخطأ الذي يظهر، و الآن لا يوجد كهرباء حتى أشغل الحاسوب و أكتب الخطأ هنا.

ios_ is private

وأيضا، عندما يظهر هذا الخطأ، يقوم برنامج CodeBlocks بفتح صفحة جديدة مليئة بالأكواد التي لا افهمها، تقريباً 1000 كود، و يؤشر لي أين الخطأ.

أرجو المساعدة و أتمنى أن يكون السؤال مفهوم قليلاً.

تعليقات 1

أضف تعليق

يجب تسجيل الدخول حتى تتمكن من إضافة تعليق أو رد.