нить для строки строки; во время чтения файла

0

У меня есть следующий код в классе для чтения файла. Он работал правильно, когда он был в основном файле, но начал показывать поток, когда я помещал его в функцию в другом классе. Он автоматически отображает этот код при отладке:

_LIBCPP_INLINE_VISIBILITY
    void __zero() _NOEXCEPT
            {
            size_type (&__a)[__n_words] = __r_.first().__r.__words;
            for (unsigned __i = 0; __i < __n_words; ++__i)
                __a[__i] = 0;
        }

Это класс:

#include <iostream>
#include <fstream> // Stream class to both read and write from/to files
#include <string>
#include "CLevels.h"

using namespace std;

CLevels :: CLevels(){

}

int CLevels :: loadFile(){
    std::string line;
    ifstream myfile ("//Users//mariahsaliba//Documents//School//University//Second Year//Semester 1//CCE 2111 - Object Oriented Programming//Assignment_2013_CCE2110//Assignment//Levels.txt");
    if (myfile.is_open())
    {
        while ( getline (myfile,line) )
        {
            cout << line << '\n';
        }
        myfile.close();
    }

    else cout << "Unable to open file\n";
    return 0;
}

Любая помощь, пожалуйста?

  • 1
    Я не понимаю, что вы подразумеваете под "начал показывать нить". Можете ли вы объяснить это немного больше?
  • 0
    вы можете показать трассировку звонка?
Показать ещё 3 комментария
Теги:
multithreading
debugging
lldb

1 ответ

1

Многие стандартные библиотечные функции C++ встроены даже в режиме отладки (неоптимизированный, -O0). Когда вы выполняете свой собственный C++ код по std::string ctor или method на строковом объекте, код для реализации, который часто встроен прямо в вашу функцию. Отладчик видит этот встроенный код из файлов заголовков C++ прямо там.

lldb пытается скрыть эту вставку от вас, поэтому вы не видите ее по умолчанию. Но это довольно сложно, и если записи строки таблицы в отладочной информации не совсем правильны, иногда это будет выглядеть так, как будто вы вошли в середину функции из стандартной библиотеки.

Просто нажмите Далее/Шаг здесь, и я уверен, вы вернетесь к своему действительному методу.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню