![]() |
|
Модераторы: bsa |
![]()
|
|
| Homskiy |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 14.6.2008 Репутация: нет Всего: нет |
Значит, есть проект (не мой), который надо использовать. Он написан на С. Переписывать есесно впадел, учитывая, что надо из него лишь пару функций. Мой проект пишется на Builder 5, и в итогуе использует VCL и все прибамбасы C++. В не моем проекте есть следующие строчки в хидере:
на что компилятор матюкается:
Пробовал поотключать нафик все параметры в параметрах проекта + поставил флажек на использование С + назначил использование хидеров и либов из Turbo C, эта проблема исщезла (появились другие, но это к теме не относится). Но такой подход все-таки не подходит. Все прибамбасы в итоговом проекте должны быть и все должно будет компилироваться вместе, так сказать... Так вот, можно ли как-то запретить использование неймспейса System локально? Или как-то по другому обойти эту проблему? ЗЫ: Переписывание не моего проэтка - не подходит - слишком дохера переписывать + дополнительно в нем разбираться, а мне надо всего-то пару функций... Так что несоизмеримость затрат и результата... |
|||
|
||||
| bronislav |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 334 Регистрация: 29.1.2008 Где: Украина::Донецк Репутация: 2 Всего: 3 |
А может легче отдельно реализовать эти самые пару функций?
-------------------- ![]() иногда проще и быстрей обойти лужу, даже если кажется что она мелкая и путь напрямик короче - ведь она может скрывать открытый люк (с) mes |
|||
|
||||
| Homskiy |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 14.6.2008 Репутация: нет Всего: нет |
Нее. Там прога которая делает синтаксический анализ текста. А мне надо собсно функции которые делают этот анализ для предложений, возращают структуру и дают возможность обхода по ней... Самому это не наваять...
|
|||
|
||||
| bronislav |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 334 Регистрация: 29.1.2008 Где: Украина::Донецк Репутация: 2 Всего: 3 |
Как я понимаю компилятор ругается на пересечение неймспейсов. Вот так с ходу даже не знаю как это решить
Можно попробывать указывать неймспейс явно. Используя System::Word, там где тебе надо использовать эти типы, а используемую по умолчанию директиву using namespace System - убрать. -------------------- ![]() иногда проще и быстрей обойти лужу, даже если кажется что она мелкая и путь напрямик короче - ведь она может скрывать открытый люк (с) mes |
|||
|
||||
| Homskiy |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 14.6.2008 Репутация: нет Всего: нет |
Вот как раз интересно где она убирается... хелпа молчит на эту тему.. Если подскажите где вообще в билдере находится управление директивами (я понимаю, что строчка в файле проекта, "pragma ..." - как бе отвечает за это дело, вроде) то буду очень признателен.
|
|||
|
||||
| bronislav |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 334 Регистрация: 29.1.2008 Где: Украина::Донецк Репутация: 2 Всего: 3 |
Дело в том, что я не знаю где это еще можно посмотреть в билдере, кроме как в начале файлов *.cpp *.h
Это вам к специалистам по билдеру в соответсвующий раздел. p.s. директива pragma не управляет использованием неймспейсов -------------------- ![]() иногда проще и быстрей обойти лужу, даже если кажется что она мелкая и путь напрямик короче - ведь она может скрывать открытый люк (с) mes |
|||
|
||||
| fish9370 |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 663 Регистрация: 15.4.2007 Где: Москва Репутация: 1 Всего: 1 |
компилятор ругается на неоднозначность.. сделай так:
Это сообщение отредактировал(а) fish9370 - 15.6.2008, 12:57 -------------------- undefined |
||||
|
|||||
| xvr |
|
||||||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 35 Всего: 223 |
Добавь перед #include'ом с этим хидером
и соответственно
Отключтить using namespace System; не получится - он зашит в system.hpp, который напрямую включается в vcl.h Можно переставить #include <vcl.h> с твоим инклюдом, но тогда придется отключить предкомпилированные хидеры |
||||||||
|
|||||||||
| Homskiy |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 12 Регистрация: 14.6.2008 Репутация: нет Всего: нет |
ну тут уже мне разрулили как это сделать
http://forum.vingrad.ru/forum/topic-216732...y1550655/0.html с помощью адаптера |
|||
|
||||
![]()
|
| Правила форума "C/C++: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |