Eclipse Не нахождение определения функции C ++, даже если оно в областиC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Eclipse Не нахождение определения функции C ++, даже если оно в области

Сообщение Anonymous »

Я сделал базовый проект C ++, который использует библиотеку FMT для печати "Привет, мир!":
#include

int main() {
fmt::print("Hello, {}!", "World");
return 0;
}

Этот код компилируется и запускается, но затмевает ошибку:

, когда я использую определение, определяю, по определению, по определению, по определению, по определению, по определению, по определению, по определению, по определению, по определению, по определению, по определению, по определению, по определению, по определению, по определению, по определению, по определению IRREANT in in rekant in rekant. Path/to/fmt/base.h :
template
FMT_INLINE void print(FILE* f, format_string fmt, T&&... args)
< /code>
Предполагаемое определение < /p>
template
FMT_INLINE void print(format_string fmt, T&&... args)
< /code>
находится прямо над ним в том же файле. Если я изменю свою операцию печати с помощью явного параметра шаблона (fmt::print("Hello, {}!", "World");), ошибка уходит. Но, как я уже сказал, код компилирует и работает хорошо даже без него - не только в командной строке, но и в Eclipse. Кажется, существует какое -то несоответствие между компиляторами, используемыми для проверки строительства и синтаксиса, или стандартами C ++, или вариантами компилятора, или ...? Я пробовал чистое строительство и перезагрузку Eclipse, и предложения здесь, но они не работали. Пример следует за этим учебником. < /P>
CMakeLists.txt:
cmake_minimum_required(VERSION 3.10)

project(HelloWorld)

find_package(fmt CONFIG REQUIRED)

add_executable(HelloWorld helloworld.cpp)

target_link_libraries(HelloWorld PRIVATE fmt::fmt)
< /code>
vcpkg.json
{
"dependencies": [
"fmt"
]
}
< /code>
helloworld.cpp
#include

int main() {
fmt::print("Hello, {}!", "World");
return 0;
}


Подробнее здесь: https://stackoverflow.com/questions/796 ... s-in-scope
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»