Понедельник, 25 Ноября 2024, 12:34

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
функция include - подключение файла
HacKeRДата: Понедельник, 13 Декабря 2010, 21:18 | Сообщение # 1
Злой Ангел
Сейчас нет на сайте
Как сделать чтобы в определённом месте поключался нужный файл?
перед этим изучал php то там удно было прописать всего include name; и всё, файл подключается... Пишу это в VS,компилируется без ошибок, но простейшая функция cout не подключается. rfr 'nj htfkbpjdfnm&


Жизнь это игра - хреново задумана но графика обалденная.....
Программирую на С++

Мой личный Мой новый блог (создан 22.08.2011)
InuДата: Понедельник, 13 Декабря 2010, 21:28 | Сообщение # 2
почетный гость
Сейчас нет на сайте
#include <iostream>
using namespace std;//видно, у тебя пространство имен не определено (эта строка)


Что же такое?
Многие, очень многие задаются этим вопросом. Так что же такое?
HacKeRДата: Понедельник, 13 Декабря 2010, 21:30 | Сообщение # 3
Злой Ангел
Сейчас нет на сайте
всё есть:) вот сама часть кода...


Жизнь это игра - хреново задумана но графика обалденная.....
Программирую на С++

Мой личный Мой новый блог (создан 22.08.2011)
InuДата: Понедельник, 13 Декабря 2010, 21:36 | Сообщение # 4
почетный гость
Сейчас нет на сайте
Quote (HacKeR)
if (com = 1){ #include <boi.cpp> } }

А вот так делать нельзя! #include - это директива препроцессора, то есть она выполняется еще до собственно компиляции. Использовать директиву как функцию нельзя, ее можно записать в самом начале программы, то есть подключить заголовочный файл заранее.
Да и не пойму я смысла этой строки - если com==1, то выполняется код из boi.cpp?


Что же такое?
Многие, очень многие задаются этим вопросом. Так что же такое?


Сообщение отредактировал Inu - Понедельник, 13 Декабря 2010, 21:39
HacKeRДата: Понедельник, 13 Декабря 2010, 21:40 | Сообщение # 5
Злой Ангел
Сейчас нет на сайте
Quote (Inu)
Да и не пойму я смысла этой строки - если com==1, то выполняется код из boi.cpp?

да, как это сделать?


Жизнь это игра - хреново задумана но графика обалденная.....
Программирую на С++

Мой личный Мой новый блог (создан 22.08.2011)
InuДата: Понедельник, 13 Декабря 2010, 21:42 | Сообщение # 6
почетный гость
Сейчас нет на сайте
Просто выполни код из boi.cpp в блоке if. Ну а если ты хочешь вызвать функцию из этого файла, то подключай его в начале кода директивой #include.

Что же такое?
Многие, очень многие задаются этим вопросом. Так что же такое?


Сообщение отредактировал Inu - Понедельник, 13 Декабря 2010, 21:45
HacKeRДата: Понедельник, 13 Декабря 2010, 21:51 | Сообщение # 7
Злой Ангел
Сейчас нет на сайте
ну а чтобы места не занимать много?
Знаю что в php можно было прописать include ... и всё работало. Вот просто в boi.cpp более 500 строк например и если это всё перенести в mеnu то будет очень много кода и чтобы найти чтото будет очень долго...
Можно как то через команды вывести всё содержимое этого файла?


Жизнь это игра - хреново задумана но графика обалденная.....
Программирую на С++

Мой личный Мой новый блог (создан 22.08.2011)
KornivalДата: Понедельник, 13 Декабря 2010, 22:18 | Сообщение # 8
The Witcher
Сейчас нет на сайте
Quote (HacKeR)
Знаю что в php можно было прописать include ... и всё работало. Вот просто в boi.cpp более 500 строк например и если это всё перенести в mеnu то будет очень много кода и чтобы найти чтото будет очень долго... Можно как то через команды вывести всё содержимое этого файла?

Код из файла boi.cpp пихай в функции, сам файл подключай директивой include в самом начале. А дальше просто вытаскиваешь нужную функцию и все.

Добавлено (13.12.2010, 22:18)
---------------------------------------------
Кстати .cpp файлы инклудить нельзя.
смотри сюда

InuДата: Вторник, 14 Декабря 2010, 12:34 | Сообщение # 9
почетный гость
Сейчас нет на сайте
HacKeR, извниняюсь за ложную инфу - так делать все-таки можно, только кусок кода нужно вынести в отдельный файл с расширением inl (хотя можно и в txt, и в файл с другим расширением) и сделать инклуд.
Quote (HacKeR)
if (com = 1){ #include <boi.cpp>}

будет так
Quote (HacKeR)
if (com = 1){ #include "boi.inl"}

Причем в этом файле должен содержаться именно кусок кода из основного исходника - он просто выполнится так, если бы этот код был в блоке if.


Что же такое?
Многие, очень многие задаются этим вопросом. Так что же такое?


Сообщение отредактировал Inu - Вторник, 14 Декабря 2010, 12:40
HacKeRДата: Вторник, 14 Декабря 2010, 13:06 | Сообщение # 10
Злой Ангел
Сейчас нет на сайте
Inu,
Спасибо. Лови +
ураа, моё 500 сообщение:)


Жизнь это игра - хреново задумана но графика обалденная.....
Программирую на С++

Мой личный Мой новый блог (создан 22.08.2011)


Сообщение отредактировал HacKeR - Вторник, 14 Декабря 2010, 13:06
UndeadДата: Вторник, 14 Декабря 2010, 14:34 | Сообщение # 11
NeoAxis User
Сейчас нет на сайте
Вы совсем психи? Кто так делает?
Делаете обьявление всех функций в одном заголовочники, подключаете его в обойх CPP файлах и вызываете функцию из boi.cpp


Вcем зла.
InuДата: Вторник, 14 Декабря 2010, 15:54 | Сообщение # 12
почетный гость
Сейчас нет на сайте
Quote (Undead)
Вы совсем психи? Кто так делает?

Если ты так не делаешь, это совсем не значит, что это неправильно. Язык поддерживает подобное выражение, почему бы его не использовать?


Что же такое?
Многие, очень многие задаются этим вопросом. Так что же такое?
BOOMДата: Среда, 15 Декабря 2010, 08:40 | Сообщение # 13
I am the creator of ADE
Сейчас нет на сайте
Quote (Undead)
Вы совсем психи? Кто так делает? Делаете объявление всех функций в одном заголовочном файле, подключаете его в обоих CPP файлах и вызываете функцию из boi.cpp

Во-первых, подучи русский язык.
Во-вторых, я с тобой категорически не согласен. Полистай документацию по стандарту C++0x, или более позднею.

Quote (Inu)
Причем в этом файле должен содержаться именно кусок кода из основного исходника - он просто выполнится так, если бы этот код был в блоке if.

В некоторых случаях, может выдать ошибку при сборе, но оно, по идеи, работать должно. (по крайней мере, такую возможность предусматривает стандарт C++).

HacKeR, я вижу, что при директиве #include, Ты используешь треугольные скобочки. Видимо не знаешь, что они значат.

При директиве #include название файла может быть взято в треугольные скобочки <>, или в кавычки "".
Треугольные скобочки указывают, что файл, который вкладывается, находится в глобальных папках компилятора (в основном папка include в корне директории компилятора).
Кавычки указывают на расположение файла в папке проекта.

Code

#include <map> //заголовочный файл для использования класса map из stl библиотеки.
#include "memory_creation.hxx" //Какой то файл из проекта.

П.С.
Учиться не грех, грех говорить: "я знаю", не зная...


______________________________
Я вернулся, и это чудо.
______________________________


Сообщение отредактировал BOOM - Среда, 15 Декабря 2010, 08:45
UndeadДата: Четверг, 16 Декабря 2010, 00:11 | Сообщение # 14
NeoAxis User
Сейчас нет на сайте
Quote (BOOM)
В некоторых случаях, может выдать ошибку при сборе, но оно, по идеи, работать должно. (по крайней мере, такую возможность предусматривает стандарт C++).

Вот поэтому и не стоит так делать, это уже какое то извращение


Вcем зла.
DekaSoftДата: Четверг, 16 Декабря 2010, 03:28 | Сообщение # 15
почетный гость
Сейчас нет на сайте
Quote (HacKeR)
Знаю что в php можно было прописать include ... и всё работало.

PHP - скриптовый язык. Не путай божий дар с яичницей. Если будешь делать так как в первом посте быстро запутаешься. Тебе уже советовали как сделать - вынеси описание требуемой функции в заголовочный файл и подключи его в начале программы. Отдели мух от котлет: объявление - отдельно, реализация - отдельно.


http://dekasoftware.narod.ru
http://www.dekagames.com
UndeadДата: Четверг, 16 Декабря 2010, 07:12 | Сообщение # 16
NeoAxis User
Сейчас нет на сайте
Quote (DekaSoft)
PHP - скриптовый язык. Не путай божий дар с яичницей. Если будешь делать так как в первом посте быстро запутаешься. Тебе уже советовали как сделать - вынеси описание требуемой функции в заголовочный файл и подключи его в начале программы. Отдели мух от котлет: объявление - отдельно, реализация - отдельно.

Спасибо, что поддержал, а то с людей с глючными мыслями направлять на путь истинный одному сложно

Добавлено (16.12.2010, 07:12)
---------------------------------------------
Вот пример использования функции из другого *.cpp файла


Вcем зла.

Сообщение отредактировал Undead - Понедельник, 20 Декабря 2010, 13:34
InuДата: Четверг, 16 Декабря 2010, 07:29 | Сообщение # 17
почетный гость
Сейчас нет на сайте
Quote (Undead)
а то с людей с глючными мыслями направлять на путь истинный одному сложно

Во имя K&R и Шилдта со Страуструпом на пару! Я прямо прозрел! Пойду смою C++0x в унитаз и буду учиться языку по вашим постам.


Что же такое?
Многие, очень многие задаются этим вопросом. Так что же такое?
UndeadДата: Четверг, 16 Декабря 2010, 10:20 | Сообщение # 18
NeoAxis User
Сейчас нет на сайте
Quote (Undead)
Во имя K&R и Шилдта со Страуструпом на пару! Я прямо прозрел! Пойду смою C++0x в унитаз и буду учиться языку по вашим постам.

Я знаю про то, что твой способ упоминается в литературе, но он не всегда работает.
А предложенный мною проще, понятней и эффективней.
Я не хочу тебя чему то учить, я просто показываю, что есть более удобный способ
А пример для HacKeR,а.


Вcем зла.
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг