C ++ Builder включает файл заголовка из другой папки - PullRequest
0 голосов
/ 10 июля 2020

Я использую C ++ Builder. Я хочу включить файл заголовка, который находится в отдельной папке от моего проекта.

Я попытался добавить папку в путь поиска и включить файл в свой проект:

#include "GXWARE32\Include\gxutils.h"

, но когда я компилирую, у меня есть ошибки в файле

Ошибки при компиляции

Итак, я попытался добавить все подпапки в путь поиска, и он работает с маленькой папкой, но не с большой.

Ответы [ 2 ]

0 голосов
/ 10 июля 2020

Без кода мы можем только догадываться ... некоторым библиотекам нужен определенный порядок c #include ... некоторые библиотеки имеют жестко запрограммированные относительные пути, и, перемещая их, вы нарушили это ... Некоторым библиотекам также требуется макросы конфигурации, определенные до #include.

Из-за ошибок у вас есть #include файл более одного раза (и он не защищен защитой заголовка, например макросами #pragma once или #ifndef file_id #define file_id ... #endif) и у вас отсутствует предыдущий #include для некоторого используемого типа данных.

Откройте файл gxutils.h и посмотрите в строке 143 на отсутствующий тип данных. В среде IDE во время компиляции курсор обычно останавливается непосредственно на материале. Затем просто поищите тип данных в файлах вашей библиотеки, чтобы вы знали, какой файл #include перед ...

Все это может иногда случаться, если вы включаете неправильный файл ... некоторые библиотеки должны быть include cpp вместо h ...

Добавление путей поиска ничего не даст, поскольку компилятор не жалуется на не найденные файлы ...

0 голосов
/ 10 июля 2020

Согласно журналу ошибок, возможно, вы пропустили какой-то заголовочный файл, на который полагается gxutils.h.

...