Spec-Zone.ru › C++

std::source_location::line

constexpr std::uint_least32_t line() const noexcept;
(начиная с C++20)

Возвращает номер строки, представленный этим объектом.

Параметры

(нет)

Возвращаемое значение

Номер строки, представленный этим объектом.

Рекомендуется, чтобы реализация возвращала 0, если номер строки неизвестен.

Пример

#include <iostream>
#include <string_view>
#include <source_location>

inline void cur_line(
    const std::string_view message = "",
    const std::source_location& location = std::source_location::current())
{
    std::cout
        << location.line() // <- the line # of a call site
        << ") "
        << message; 
}

int main()
{
    cur_line("++\n");
    cur_line(); std::cout << "Hello,\n";
    cur_line(); std::cout << "C++20!\n";
    cur_line("--\n");
}

Вывод:

17) ++
18) Hello, 
19) C++20! 
20) --

См. также

column
возвращает номер столбца, представленный этим объектом
(открытая функция-член)
file_name
возвращает имя файла, представленное этим объектом
(открытая функция-член)
function_name
возвращает имя функции, представленной этим объектом, если оно есть
(открытая функция-член)
source_line
получает номер строки, лексически связанной с вычислением, представленным stacktrace_entry
(открытая функция-член std::stacktrace_entry)
Информация об имени файла и номере строки

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/utility/source_location/line

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API