PureBasic

Функции Includes (включение в код)

Краткое описание функций:
IncludeFile XIncludeFile
IncludeBinary IncludePath

Синтаксис
IncludeFile  "Filename" 

Описание


IncludeFile вставляет указанный файл с исходным кодом PureBasic, в то место где записана эта функция, даже если для этого файла ранее уже использовали функцию XIncludeFile.

Пример

IncludeFile "Sources\myfile.pb" ; Этот файл будет вставлен в текущий месте кода.

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

Синтаксис
XIncludeFile "Filename"


Описание


XIncludeFile подобна IncludeFile, но не позволяет включать один и тот же файл дважды.

Пример

XIncludeFile "Sources\myfile.pb" ; Этот файл будет вставлен.
XIncludeFile "Sources\myfile.pb" ; Этот файл будет проигнорирован наряду со всеми последующими вызовами.

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

Синтаксис
IncludeBinary "filename" 


Описание


IncludeBinary вставляет указанный файл (не исходный код PureBasic), в то место где записана эта функция. При этом вставка должна происходить в пределах блока Data. Эта команда может использоваться с командами /CatchImage(), /CatchSound(), /CatchSprite() для вставки изображений, звуков, спрайтов и т.д., в исполняемый файл.

Пример

DataSection
    MapLabel:
    IncludeBinary "Data\map.data"
EndDataSection




Синтаксис
IncludePath "path" 

Описание


IncludePath Устанавливает заданный по умолчанию путь для всех файлов, включаемых в код после вызова этой команды. Это очень удобно для включения множества файлов из одного каталога. Команда IncludePath "" (с пустыми кавычками) сбрасывает ранее заданный путь, им снова становится путь к папке с приложением.

Пример

IncludePath  "Sources\Data"
IncludeFile  "Sprite.pb"
XIncludeFile "Music.pb"
IncludeFile  ""      ;  сбрасывает ранее заданный путь по умолчанию.

Примечания (для Windows)


Путь к файлу — это последовательность из имён каталогов или символов "..", разделённых символами "\" (обратный слэш), задающий маршрут от текущего или корневого каталога к тому, в котором находится нужный файл. Путь к файлу от корневого каталога называют абсолютным (или полным) путём, а от текущего — относительным путём.
Путь, начинающийся с "\", воспринимается системой как путь от корневого каталога текущего диска. Каждое имя каталога, указанное в пути, соответствует входу в каталог с этим именем. Символ ".." перед "\" обозначает переход в родительский каталог, то есть на уровень выше текущего каталога. Последовательность из символов "..\..\" отправляет на 2 уровня выше текущего каталога, и так далее.

Для изменения текущего каталога программы можно использоваться функции GetCurrentDirectory() и SetCurrentDirectory().

В API-интерфейсе Windows для системы NTFS, есть максимальная длина пути в MAX_PATH, которая определяется как 260 символов.

Примеры:

Предположим, что текущий каталог "c:\sys\prog\work\"
Тогда путь:
"c:\test.txt"     – будет указывать на файл с полным именем "c:\test.txt"
"\test.txt"     – будет указывать на файл с полным именем "c:\test.txt"
"c:test.txt"     – будет указывать на файл с полным именем "c:\sys\prog\work\test.txt"
"tempdir\test.txt" - будет указывать на файл с полным именем "c:\sys\prog\work\tempdir\test.txt"
"c:tempdir\test.txt" - будет указывать на файл с полным именем "c:\sys\prog\work\tempdir\test.txt"
"c:\tempdir\test.txt" - будет указывать на файл с полным именем "c:\tempdir\test.txt"
"c:..\test.txt"    - будет указывать на файл с полным именем "c:\sys\prog\ test.txt"
"c:..\..\test.txt" - будет указывать на файл с полным именем "c:\sys\test.txt"

Если в тех же условиях в Purebasic ссылаться на не текущий диск, то относительные пути работают не так как должны в Windows:
"d:\test.txt"     - будет указывать на файл с полным именем "d:\test.txt"
"d:test.txt"     – будет указывать на файл с полным именем "d:\test.txt"
"d:..\test.txt" - будет указывать на файл с полным именем "d:\test.txt"
"d:tempdir\test.txt" - будет указывать на файл с полным именем: "d:\tempdir\test.txt"
"d:\tempdir\test.txt" - будет указывать на файл с полным именем: "d:\tempdir\test.txt"