Spec-Zone.ru › C++

std::meta::source_location_of

Определён в заголовочном файле <meta>
consteval std::source_location source_location_of( std::meta::info r );
(начиная с C++26)

Если возможно, возвращает исходное местоположение того, что представляет r.

Формально:

  • если r представляет скалярное значение, тип, отличный от типа класса или перечисления, глобальное пространство имён или описание члена данных, возвращает инициализированный значением std::source_location.
  • В противном случае возвращает значение, определяемое реализацией.

Если r представляет сущность с определением, доступным из контекста вычисления, реализации рекомендуется возвращать значение, соответствующее определению.

Параметры

r - значение отражения

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

Исходное местоположение того, что представляет r, как описано выше.

Пример

#include <meta>
#include <iostream>
#include <source_location>

int main()
{
    std::cout << '#' << source_location_of(^^main).line()
              << ' ' << source_location_of(^^main).function_name()
              << '\n';
}

Возможный вывод:

#5 int main()

См. также

current
[статическая]
создаёт новый source_location, соответствующий местоположению точки вызова
(открытая статическая функция-член std::source_location)

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

Spec-Zone.ru

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