Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.06.2009, 13:38   #1
Troi666
Пользователь
 
Регистрация: 01.12.2008
Сообщений: 58
По умолчанию (C++) Многофайловый проект/раздельная компиляция

Добрый день всем...пытаюсь написать нечто, позволяющее русифицировать выводящийся на экран текст с помощью лишь одного инклуда (ну и использования функции русификации конечно). Однако пока ничего не выходит...помогите плиз

Основной файл программы (функция main)
Код:
#include "ru.h"
#include <conio>
#include <iostream>
using namespace std;

void main()
{
   cout<<Rus("Привет!!!");
   getch();
}
Второй файл...функция Rus()
Код:
#include "ru.h"

char bufRus[256];

char* Rus (char* text)
{
   CharToOem(text,bufRus);
   return bufRus;
}
Ну и ru.h
Код:
//Русификация вывода
#ifndef RU_H_
#define RU_H_
#include <windows>
using namespace std;
char* Rus (char*);
#endif

Последний раз редактировалось Troi666; 06.06.2009 в 13:41.
Troi666 вне форума Ответить с цитированием
Старый 06.06.2009, 15:38   #2
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

А что именно не выходит? У меня все работает.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 06.06.2009, 16:03   #3
Troi666
Пользователь
 
Регистрация: 01.12.2008
Сообщений: 58
По умолчанию

Sazary Не могу понять, находит ли компилятор все файлы.... ru.h он видит точно....а вот про 2 файла программы сомневаюсь, хотя ошибок никаких нет....с другой стороны окошко консоли даже и не думает появляться...просто происходит какое-то мерцание - причём не консольного окошка (такое бывает при отсутствие того, что могло бы вызвать паузу в конце программы), а просто левая менюшка компилятора (Borland C++ Builder 6.0) исчезает и снова появляется...
Troi666 вне форума Ответить с цитированием
Старый 06.06.2009, 16:45   #4
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

А вы их в проект добавили?
Прикрепляю билдеровский проект.
Вложения
Тип файла: rar Project1.rar (106.9 Кб, 21 просмотров)
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 06.06.2009, 16:55   #5
Troi666
Пользователь
 
Регистрация: 01.12.2008
Сообщений: 58
По умолчанию

Sazary Ваш проект работает! Можете тогда объяснить, как файлы в проект добавлять? Прост это первая моя программа с несколькими файлами...Делел так: запускал компилятор -> закрывал появившийся шаблон файла (Unit1.cpp) -> открывал файл с функцией main -> Нажимал Add To Project -> Добавлял файл с функцией Rus -> Нажимал запуск проги...не работало...

И ещё 1 вопрос...всюду, куда не смотрел - никто не советует включать определения функций в заголовочные файлы... Но почему? Разве #ifndef/#endif не поможет избежать повторного включения?

Последний раз редактировалось Troi666; 06.06.2009 в 17:02.
Troi666 вне форума Ответить с цитированием
Старый 06.06.2009, 17:04   #6
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Я открываю Project Manager и просто переношу туда все файлы )
Цитата:
Сообщение от Troi666
И ещё 1 вопрос...всюду, куда не смотрел - никто не советует включать определения функций в заголовочные файлы... Но почему?
Просто это и есть принципы раздельной компиляции. Заголовки отдельно, описания отдельно.. Так и удобнее.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 06.06.2009, 17:21   #7
Troi666
Пользователь
 
Регистрация: 01.12.2008
Сообщений: 58
По умолчанию

Не могу найти его (Project Manager). Английский очень плохо знаю - посмотрел справку - пишут, толи, что докаблю найти надо какую-то "dockable", толи поставить галочку "View|Project Manager"

================

Сорри....нашёл)

================

Но проблема не решилась....какие там файлы должны оказаться, чтобы всё норм было?

Последний раз редактировалось Troi666; 06.06.2009 в 17:27.
Troi666 вне форума Ответить с цитированием
Старый 06.06.2009, 17:38   #8
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
.какие там файлы должны оказаться, чтобы всё норм было?
Перетащите туда все 3 файла (main.cpp, ru.h, ru.cpp), а Unit1.cpp (который при создании проекта появился) удалите.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума Ответить с цитированием
Старый 06.06.2009, 23:59   #9
Troi666
Пользователь
 
Регистрация: 01.12.2008
Сообщений: 58
По умолчанию

Sazary Спасибо! Проблема оказалась в другом...После добавления файлов нужно было нажать save all, вот потом оно запустилось)))
Troi666 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
раздельная компилляция Dimarik Общие вопросы C/C++ 34 16.05.2009 15:19
C++. Наследование. Раздельная компиляция Matthew Помощь студентам 0 08.05.2009 21:03
компиляция DarK_NighT Общие вопросы Delphi 1 25.03.2009 13:18
Компиляция. Бро Общие вопросы C/C++ 2 03.06.2008 06:46
Компиляция xGroupers Общие вопросы Delphi 1 24.03.2008 11:57