#define ___MY_DEBUG___
//макроопределение
#ifdef ___MY_DEBUG___
//тут код который будет выполнен если было макрооопределение
#endif
//просто код
#ifndef ___MY_BEDUG___
//тут код, который будет выполнен если не было макроопределения
#endif
#undef ___MY_DEBUG___
//удалить макроопределение
заголовочный файл
подскажите, пожалуйста, как написать заголовочный файл. в особенности использование директив #ifndef и проч. Я в этом абсолютный тефаль!!! :))
Код:
и заголовочные файлы тут не причём, директивы можно использовать и в .cpp
заголовочный файл как правило содержит описания классов, и, иногда, некоторых их функций. такие файлы нужны если один класс используется в нескольких файлах .cpp (те же классы MFC)
Заголовочный файл включается в код директивой
Код:
#include "afxwin.h"
//вместо afxwin.h - ваш заголовочный файл
//вместо afxwin.h - ваш заголовочный файл
Спасибо за ответ!! :) так я правильно понял, что если писать проект ручками, а не генерить с помощью Wizardов, то в принципе и необязательно писать заголовочный файл.
Кроме того, в заголовочных файлах содержится практически вся системная информация, даже в программе для командной строки, если она хоть что-то должна выводить потребуется включить заголовочный файл <iostream>, в WinAPI "windows.h" и в MFC "afxwin.h" (это минимум один в проекте)
В заголовочных файлах поддерживается прекомпиляция (precompiled header) - т.е. код заголовочного файла будет скомпилирован раньше основных модулей, что может значительно уменьшить размер готовой программы, если содержимое такого файла часто используется.
Вобщем такие файлы - нужная вещь, иначе их бы не было предусмотрено в языке.
[/QUOTE]
Да неужели? А по-моему это полная ерунда. Прекомпилированные заголовки просто ускоряют процесс компиляции.
Заголовочные файлы компилируются в первый раз, затем они не перекомпилируются, т. к. изменения в них вносятся сравнительно редко. Вот и всё.
еще один большой вопрос. если коротко: допустим меня попросили написать простую программу, прогу я написал, код вычистил до 0/0. заголовоки тоже переписал. проблема вот в чем - я ее написал в виде консольного приложения. что мне нужно сделать дальше, чтобы довести ее до стадии установки на компьютер пользователя? и как это делается?
предупреждал ведь ТЕФАЛЬ я? но хочу учиться!! :))
Что конкретно ты хочешь? Создать установщик, который распакует и установит твое консольно приложение пользователю? Если так - то просто использовать любой из имеющихся бесплатных инсталяторов.
Ага. А ещё в Visual Studio есть специальные Installer-проекты.
именно это мне нужно. но я ни разу не пользовался этими инсталляторами, поэтому как это деланется не знаю? :(
http://www.innosetup.com).
А дальше там есть визард, который поможет создать нужный скрипт для инсталятора.
Скрипт можно писать и вручную, когда опыт появится в этом. Могу подкинуть доки по нему. А дальше по скрипту собирается дистрибутив.
Предусмотреть там можно все что нужно при установке на машину пользователя.
Ну ставишь себе как нибудь инсталятор. Мне например нравится Inno Setup (
А дальше там есть визард, который поможет создать нужный скрипт для инсталятора.
Скрипт можно писать и вручную, когда опыт появится в этом. Могу подкинуть доки по нему. А дальше по скрипту собирается дистрибутив.
Предусмотреть там можно все что нужно при установке на машину пользователя.
если не затруднит (deu-18@yandex.ru)
заранее спасибо
а то что приложение консольное играет какую либо роль? в каком виде оно предстанет перед пользователем?
или его переделать под Win32 Application??
даже установил свою прогу на свой же комп. но вот при запуске на доли секунды возникает черное окошко а затем оно пропадает и все. это как я понимаю из-за того что приложение консольное? да? а что делать?
З.Ы. Я не чернышевский. ;)
Ну раз документация есть - у себя искать не буду )