E0289 отсутствуют экземпляры конструктура
#include <iostream>
#include <string_view>
#include <string>
std::string_view LoL()
{
std::string str{};
std::getline(std::cin >> std::ws, str);
return str;
}
int main()
{
std::string_view x{LoL};
std::cout << x;
return 0;
}
не компилируется пишет
Ошибка (активно) E0289 отсутствуют экземпляры конструктора "std::basic_string_view<_Elem, _Traits>::basic_string_view [с _Elem=char, _Traits=std::char_traits]", соответствующие списку аргументов getline E:\c++\getline\Source.cpp 12
что делать
Ответы (2 шт):
Автор решения: Harry
→ Ссылка
В строке
std::string_view x{LoL};
вы передаете в качестве аргумента адрес функции LoL, а не результат ее вызова.
std::string_view x{LoL()};
Просто интересно, сколько секунд вы пытались решить этот вопрос самостоятельно?
И еще —
std::string_view LoL()
{
static std::string str{};
или
std::string LoL()
{
std::string str{};
std::getline(std::cin >> std::ws, str);
return str;
}
int main()
{
std::string lol = LoL();
std::string_view x{lol};
std::cout << x;
return 0;
}