Ошибка C2678: двоичный файл «>>»: не найден оператор, который принимает левый операнд типа «std :: ifstream» - PullRequest
0 голосов
/ 05 октября 2019

Я занимаюсь разработкой приложения C ++ для Windows Form, когда пользователь нажимает кнопку, он считывает номер счетчика кликов из txt-файла, затем выполняет некоторые функции и записывает новый номер счетчика кликов обратно в текстовый файл.

Когда был только офлайновый код, он работал хорошо. Но после того, как я добавил код ifstream, появилась эта ошибка:

Ошибка C2678: двоичный файл '>>': не найден оператор, который принимает левый операнд типа 'std :: ifstream' (или нет приемлемого преобразования)

Я уже включил <fstream> и <iostream>.

private: System::Void button2_Click(System::Object^  sender, System::EventArgs^  e) 
{
    //Some visible and invisible code for label

    std::ifstream file1;
    file1.open("Progress.txt");
    file1 >> clickcount;
    file1.close();

    clickcount = ++clickcount;

    ...

    std::ofstream file;
    file.open("Progress.txt");
    file << clickcount;
    file.close();

1 Ответ

0 голосов
/ 05 октября 2019

Я решил свою проблему

Объявите количество кликов следующим образом:

#pragma endregion
   private: System::Void button1_Click_1(System::Object^  sender, System::EventArgs^  e) {
       int clickcount;
       ...}

Не в public ref class

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...