LINUX.ORG.RU
ФорумTalks

Поддержка C++ модулей в Visual Studio 2015 Update 1

 , ,


0

4

Продублировал заголовок с хабра, а в линухах то как или как всегда? А ведь и правда:

Да, это будет сильный удар по Go\Rust, понизится входной порог в плюсы. Милота!

http://habrahabr.ru/company/infopulse/blog/267781/

★★★★★

А что реально вот прям в след стандарт внедрить хотят? Или таки фича конкретного компилятооа?

erfea ★★★★★
()
Последнее исправление: erfea (всего исправлений: 1)

Ну неудивительно, что у MS появилось раньше. Они внесли предложение в комитет стандартизации.

SystemD-hater
()

Сделают — посмотрим. Не сделают — пофиг. Хотя немного навести порядок эта хрень могла бы помочь.

Stahl ★★☆
()

Go\Rust

Пописал на лицо бэкслешистов.

Akamanah ★★★★★
()
Ответ на: комментарий от erfea

А что реально вот прям в след стандарт внедрить хотят? Или таки фича конкретного компилятооа?

Есть предложение от MS, которое они же и внедряют в своем компиляторе, и есть другое от Гугл, которое реализуют в clang. Они несовместимы и оба варианта дают сильно урезанную по сравнению с действующим вариантом (#include) функциональность. IMHO, библиотеки для C++ можно (и нужно) распространять только только в виде исходников.

prefetch
()

Модули - одна из наиболее необходимых фич для плюсов. Сочувствую legacy-апологетам.

Solace ★★
()

В чём профит? Кому-то лень осилить header guards? Кому-то не насрать на скорость компиляции?

DELIRIUM ☆☆☆☆☆
()
Ответ на: комментарий от prefetch

Да если бы буст распространялся только в виде исходников, 90 процентам пользователей было бы легче застрелиться, чем его правильно собрать.

asaw ★★★★★
()
Ответ на: комментарий от DELIRIUM

Да, мне не насрать ни на скорость компиляции, ни на удобство использования.

asaw ★★★★★
()
Ответ на: комментарий от asaw

Да если бы буст распространялся только в виде исходников, 90 процентам пользователей было бы легче застрелиться, чем его правильно собрать.

А если с ним будет скрипт сборки на основе cmake, например, который соберет все (и только то) что надо твоему проекту, при этом автоматом найдет все зависимости в твоей системе, а что не найдет выкачает и тоже соберет? В таком варианте менеджер модулей может быть внешним инструментом, не связанным с компилятором.

prefetch
()
Ответ на: комментарий от prefetch

Чтобы собрать все, что нужно только моему проекту и нужны модули, не?

Solace ★★
()

Как можно сравнивать С++ c Go? В отличие от первого, Go учится за неделю (со всеми библиотеками). Rust, конечно сложен, но у него есть много уникальных фич, которых нет в С++, большинство которых укладываются в правило - «если программа скомпилировалась, то она будет работать». Ну и фишка Rust-а, которая есть сейчас - то, что 'cargo test' выполнит в качестве тестов и примеры из документации. И это из коробки! С++ еще долго будет популярным языком, но глупо предполагать что: 1) Microsoft сделает что-то инновационное для него; 2) наличие модулей сразу сравняет его с Go или Rust.

XVilka ★★★★★
()
Ответ на: комментарий от XVilka

2) наличие модулей сразу сравняет его с Go или Rust.

OLOLO. Weebl's Stuff will never lower itself to your level!

asaw ★★★★★
()
Ответ на: комментарий от prefetch

сильно урезанную по сравнению с действующим вариантом (#include) функциональность.

Например?

Deleted
()
Ответ на: комментарий от DELIRIUM

Кому-то лень осилить header guards?

Дело не только в них

Кому-то не насрать на скорость компиляции?

Если компилируешь больше 1-го файла, то не насрать.

KennyMinigun ★★★★★
()
Ответ на: комментарий от KennyMinigun

Если компилируешь больше 1-го файла, то не насрать.

Ну используй pre-compiled headers чо.

DELIRIUM ☆☆☆☆☆
()

Так заголовочные файлы — это же одна из самых крутых фич плюсов же! Если ты пишешь библиотеку — в публичном .h файле обычно содержится чётко выверенный интерфейс класса, без всяких реализаций, ну и приватный указатель на имплементацию. Таким образом, имея только заголовочный файл, можно, например, в случае динамической линковки предоставить альтернативную реализацию библиотеки и подсунуть её уже собранному бинарю. По сути заголовочный файл — аналог Java-интерфейсов без использования виртуальных функций.

com
()
Ответ на: комментарий от XVilka

В отличие от первого, Go учится за неделю (со всеми библиотеками)

то есть, у Go очень скудный набор библиотек?

next_time ★★★★★
()
Ответ на: комментарий от KennyMinigun

компилирую пару сот тыщ файлов, полностью насрать... Когда стало неудобно - проапгрейдил проц в 6 раз, и память х4 сделал и снова насрать... ЧЯДНТ

Jetty ★★★★★
()

а в линухах то как или как всегда

Шланг свои костыли какие-то попиливает — http://clang.llvm.org/docs/Modules.html#includes-as-imports

И грозится реализовать если в комитете будет соответствующая бумажка:

At present, there is no C or C++ syntax for import declarations. Clang will track the modules proposal in the C++ committee.

Говнохабр нинужен, да.

mkam
()
Ответ на: комментарий от prefetch

А если с ним будет скрипт сборки на основе cmake, например, который соберет все (и только то) что надо твоему проекту, при этом автоматом найдет все зависимости в твоей системе, а что не найдет выкачает и тоже соберет?

Imagine all the people
Living life in peace...

rupert ★★★★★
()

а в линухах то как или как всегда?

При чем тут линукс? Линукс не должен ничего знать о модулях.

По теме вижлы - свистоперделки хорошо, но лучше бы они занялись поддержкой стандарта.

andreyu ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.