С Новым годом! Форум программистов, компьютерный форум, киберфорум
C++/CLI
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/8: Рейтинг темы: голосов - 8, средняя оценка - 4.50
8 / 8 / 0
Регистрация: 17.11.2012
Сообщений: 159

Действительно ли C++/CLI годен для совместной работы .NET и Native-C++ разработчиков?

11.10.2015, 16:52. Показов 1592. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
На практике, основной целью c++/cli является возможность взаимодействия чистого с++ и платформы .net (кто-то скажет, что этот язык нужен скорее для того, чтобы с++ программист мог писать .net приложения, но все-таки уж проще по-моему это делать на c#, даже если уже знаешь с++. Недавно пришлось писать оболочку .Net функции на с++/cli, для дальнейшего ее использования на чистом c++. В итоге пришлось потратить кучу времени, на то, чтобы разобраться, как перевести управляемый 2d-массив в c++ - массив. Проще было-бы сразу эту функцию писать на чистых плюсах. Так вот вопрос заключается в том, а годен ли по факту c++/cli для совместной работы .net разработчиков и с++ разработчиков, раз возникают такие проблемы, или проще писать на одном языке?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.10.2015, 16:52
Ответы с готовыми решениями:

Ищу сотрудника и друга для совместной работы
Привет. Я занимаюсь веб-программированием и многими другими вещами. Я ищу человека с которым можно будет совместно фрилансить и работать...

Ищу веб-дизайнера для совместной работы
Привет, я ищу веб-дизайнера (начинающего) для совместной работы над созданием сайтов. О себе: php-программист. Навыки и знания: ...

Оптимизация производительности C#.NET (Алгоритм, Многопоточность, Debug, Release, .Net Core, Net Native)
Решил поделится своим небольшим опытом по оптимизации вычислений на C#.NET. НЕ профи, палками не кидать, конструктив приветствуется! ...

4
Администратор
Эксперт .NET
 Аватар для tezaurismosis
9673 / 4825 / 763
Регистрация: 17.04.2012
Сообщений: 9,663
Записей в блоге: 14
12.10.2015, 20:12
Лучший ответ Сообщение было отмечено Павлушечка как решение

Решение

C++/CLI во многих источниках позиционируется как клей для уже имеющегося кода.
Допустим, в книге Маркуса Хееге.
Писать приложение полностью для .NET на C++/CLI, когда есть C# - это мазохизм.
А если нужно сделать склейку между готовым управляемым и неуправляемым кодом, особенно если того и другого много - самый раз.
Если есть возможность, то конечно лучше писать на одном языке. Это и сэкономит время и избавит от снижения производительности при переключении между управляемым и неуправляемым кодом (особенно если основной костяк на управляемом, который, как известно, не так быстр).
Цитата Сообщение от Павлушечка Посмотреть сообщение
В итоге пришлось потратить кучу времени, на то, чтобы разобраться, как перевести управляемый 2d-массив в c++ - массив
А в чём там проблема была? Копируем поэлементно.
1
8 / 8 / 0
Регистрация: 17.11.2012
Сообщений: 159
12.10.2015, 21:09  [ТС]
Цитата Сообщение от tezaurismosis Посмотреть сообщение
А в чём там проблема была? Копируем поэлементно.
Действительно, можно было бы так сделать, но просто подумал, что нужно делать, так же, как и с одномерными, а в этом случае, насколько я понимаю, рекомендуется не копировать поэлементно, а по управляемому массиву получать указатель (pin_ptr<T>) на его нулевой элемент, и все. Это работает очень быстро, т.к. не происходит перемещения информации. В случае 2D массива захотелось сделать тоже самое (хотя и правда уж лучше сделал бы поэлементно, и не парился), и тут столкнулся с проблемой, что массив типа pin_ptr<T> создать нельзя (чтобы представить двумерный массив, как массив указателей). Может конечно такие мысли возникли из-за неопытности (C++ плохо знаю, программирую в основном на C#)?
0
12.10.2015, 21:29

Не по теме:

Цитата Сообщение от Павлушечка Посмотреть сообщение
по управляемому массиву получать указатель (pin_ptr<T>) на его нулевой элемент
Интересная идея.

0
 Аватар для ПерС
587 / 490 / 371
Регистрация: 05.11.2013
Сообщений: 1,271
Записей в блоге: 6
05.11.2015, 18:01
годен ли по факту c++/cli для совместной работы .net разработчиков и с++ разработчиков
я сейчас использую для адаптации старых исходников C++ на новый лад... ну, и учат этому, и заказ такой... в целом, получается, на "решётке" с трудом представляю, как бы справился, да и не особо знаю её
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
05.11.2015, 18:01
Помогаю со студенческими работами здесь

Настройка сети (два роутера для совместной работы)
Есть два роутера - TRENDnet TEW-652BRP и DIR-300. Две комнаты (А и Б). В комнату Б проведён билайновский кабель. Задачи : Подключить в...

Поиск open source проектов для совместной работы
Помогите найти опенсорс проекты, в которых можно было бы поучаствовать в качестве начинающего программиста. Может есть какие-то ресурсы в...

Софт для совместной работы с функцией шаблона проекта
Добрый день! Мне нужен софт для планирования и контроля выполнения простых и однообразных проектов. Каждый проект состоит из одних и...

C++\CLI vs C# для .NET
Пожалуйста посоветуйте что из этого лучше для .net, сейчас пишу на С++, нужно ли переходить на C# чтобы полноценно пользоваться .net? ...

Собираю команду для совместной работы над масштабным проектом
Всем привет! Собираю команду для работы над большим проектом web, и мобильных систем. Вся информация при переговорах. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru