понимание функции stringstream

#c

#c

Вопрос:

Я пытаюсь понять эту функцию stringstream ss(line); stringstream, не совсем уверенный, какова ее цель или что она делает.

Я действительно новичок в C , поэтому прошу прощения, если это действительно просто и глупо. Все, что помогает, спасибо!

c

 float process(float Beta, std::ifstream amp; INPUT, float mass, float energy, int Juse = 1, int Jerror = 1, int intype = 1)

{
    float crosscons = 8 * M_PI * mass * mass / energy; //Creates a constant that is used to calculate the cross section

    int dwarf_count = 0;
    int dcol = 0;
    string line;
    string item;
    int header = 0;
    string skip("#"); 
    INPUT.seekg(0, ios::beg); 
    while (getline(INPUT, line))
      
    {
        if (contains(line, skip))
        {
            header  ;
        } else {
            break;
        }

    }

    INPUT.seekg(0, ios::beg); // same as above, searching for the INPUT i.e File.
    for (int i = 0; i < header;   i)
    {
        getline(INPUT, line);

    }
    while (getline(INPUT, line))
    {
          dwarf_count;
        if (dwarf_count == 1)
        {
            stringstream ss(line);
            while (ss >> item)
                dcol  ; // creates a variable in the while loop, that probably means column
        }

    }
 

Комментарии:

1. Несмотря на самоназвание пуристов «конструктор — это функция», это не «функция»; его объявление и создание std::stringstream объекта с идентификатором ss .

2. Это обычное определение и инициализация переменной. Он определяет переменную ss как stringstream экземпляр и инициализирует ее с помощью line .

3. Посмотрите на результат, чтобы узнать, что он делает. Используйте отладчик, чтобы узнать, как он выдает выходные данные.