Какой getline я использую? - PullRequest
       36

Какой getline я использую?

1 голос
/ 04 апреля 2019

Я немного запутался в том, какую функцию getline () использует C ++. маленький код:

std::string name;
std::cout << "What is your name? ";
std::getline(std::cin, name); 

Я жестко использовал std :: getline из заголовка строки, но когда я щелкаю мышью по функции getline (), IDE перенаправляет меня в stdio.h, и это заголовок C.

Во время выполнения есть способ узнать, какую функцию я использую?

Ps: Да, я включаю заголовок строки (также, если я не делаю, что он предлагает, так как я могу удалить его везде, где я использовал, и все еще работает, но это вопрос для другого дня).

EDIT: qt-creator перенаправляет меня на эту функцию внутри stdio.h

/* Like `getdelim', but reads up to a newline.

   This function is not part of POSIX and therefore no official
   cancellation point.  But due to similarity with an POSIX interface
   or due to the implementation it is a cancellation point and
   therefore not marked with __THROW.  */
extern _IO_ssize_t getline (char **__restrict __lineptr,
                size_t *__restrict __n,
                FILE *__restrict __stream) __wur;

И это еще более странно, потому что я использую 2 параметра, а здесь требуется 3 ...

...