0 / 0 / 0
Регистрация: 26.01.2012
Сообщений: 7
|
|
1 | |
Использование одинаковых классов разных namespace26.05.2016, 11:11. Показов 672. Ответов 1
Метки нет (Все метки)
Есть проект (NameSpace Work1), к которому подключена библиотека Dll (создана на основе программы с NameSpace Work2). В проекте и в библиотеке есть один и тотже класс ClassF.
Для объявления объекта в программе используется конструкция ClassF NewF, а для создания объекта из библиотеки используется Work2.ClassF NewF1. В программе была функция FuncProc на вход которой подавался объект класса ClassF. Дальше потребовалось в функцию FuncProc подавать объект типа Work2.ClassF. Что привело к полной переработки не только самой функции FuncProc, но и связанных с ней классов и т.д. Цель сделать так чтоб методы, классы библиотеки (dll) использовались минимально в тексте основной программы. Нужно какое-то преобразование типа Было: ClassF NewF1 = new ClassF(); int FuncProc (ClassF aNewF) {} Надо: Work2.ClassF NewF2 = new Work2.ClassF(); Value = FuncProc ((ПРЕОБРАЗОВАНИЕ) NewF2); Классы ClassF и Work2.ClassF полностью одинаковые. Одно из решений это вынести общие классы приложения и библиотеки в отдельный nameSpace и сделать библиотекой, но это требует большой переработки как основной программы(NameSpace Work1), так и приложения, с которого сделана используемая DLL (NameSpace Work2).
0
|
26.05.2016, 11:11 | |
Ответы с готовыми решениями:
1
Использование одинаковых классов в нескольких решений Конфликт одноименных полей классов из разных Namespace Вывод одинаковых значений у разных классов Объединение нескольких классов в один namespace |
17688 / 12873 / 3366
Регистрация: 17.09.2011
Сообщений: 21,138
|
|
26.05.2016, 19:49 | 2 |
Такое малой кровью не сделать: хоть два типа и имеют одинаковые локальные имена и бинарную структуру, но для компилятора они все равно разные сущности.
Вам придется либо писать свой класс-обертку, либо делать методы для конвертации одного в другой.
0
|
26.05.2016, 19:49 | |
26.05.2016, 19:49 | |
Помогаю со студенческими работами здесь
2
Методы класса в разных namespace Visual C++ Express: видимость namespace, классов и функций Использование namespace Cбор данных с разных одинаковых по смыслу, но разных по значению ячеек, книг Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |