Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
C++ станет таким же удобным, как и Delphi! (о введении поддержке модулей)
|
|||
|---|---|---|---|
|
#18+
...команда разработчиков компилятора Visual C++ заявила... что в следующем обновлении (Visual Studio 2015 Update 1) в компилятор С++ от Microsoft будет добавлена экспериментальная возможность из нового (ещё не утверждённого) стандарта С++ — поддержка модулей! ...вкратце ...механизм использования компонентов в программах на С++ придумывался где-то лет 35 назад. Его нельзя назвать удобным: если вы хотите создать библиотеку — вам нужно сделать заголовочный файл и распространять с ним либо код, либо скомпилированную версию библиотеки. При этом возникает куча проблем: - заголовочный файл и библиотека — отдельные файлы, один из них может потеряться, либо они случайно могут рассинхронизироваться; - заголовочный файл включается в код директивой препроцессора #include, что во-первых, замедляет компиляцию, а во-вторых добавляет влияние всего, что написано в заголовочных файлах друг на друга и на конечный код. Нередки случаи, когда заголовочные файлы нужно включать в определенном порядке или определять некоторые макросы чтобы код нормально собрался. ... В итоге в инфраструктуре С++ отсутствуют понятия «сборок» или «пакетов» и, в отличии от С# или Python, где установка компонентов тривиальна, в С++ подключение каждой новой библиотеки может нести свои неожиданности. Предлагаемый механизм модулей в С++ призван убрать данную проблему, отказаться от директивы препроцессора #include и ссылаться на компоненты, как на некоторую сущность, состоящую из кода и метаданных, целостную и легко подключаемую. В итоге мы вскоре можем получить существенное ускорение внедрения новых компонентов в проект, появления полноценных менеджеров пакетов, установка новой библиотеки сведется к выполнению одной строки или нескольким кликам мышью. ... Тынц! Подробности: https://github.com/isocpp/CppCoreGuidelines/blob/master/talks/Large-Scale-C -With-Modules.pdf Модератор: Вложение удалено. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 16:31 |
|
||
|
C++ станет таким же удобным, как и Delphi! (о введении поддержке модулей)
|
|||
|---|---|---|---|
|
#18+
"ZeroMQ", зачем анонимно писать? 18201261 PS скриншот забавный, стол плиткой вымощен? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 20:33 |
|
||
|
C++ станет таким же удобным, как и Delphi! (о введении поддержке модулей)
|
|||
|---|---|---|---|
|
#18+
...вкратценескольким кликам мышью. мож не надо? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 21:22 |
|
||
|
C++ станет таким же удобным, как и Delphi! (о введении поддержке модулей)
|
|||
|---|---|---|---|
|
#18+
Изопропил...вкратценескольким кликам мышью. мож не надо? Когда у общества нет цветовой дифференциации штанов, то нет цели? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 21:38 |
|
||
|
C++ станет таким же удобным, как и Delphi! (о введении поддержке модулей)
|
|||
|---|---|---|---|
|
#18+
Примерчики и описание того, что может получиться, можно посмотреть здесь: http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n4047.pdf ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 21:48 |
|
||
|
C++ станет таким же удобным, как и Delphi! (о введении поддержке модулей)
|
|||
|---|---|---|---|
|
#18+
чччД, не пость пожалуйта простыни. Уменьшай хотя-бы или делай спойлер. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 22:15 |
|
||
|
C++ станет таким же удобным, как и Delphi! (о введении поддержке модулей)
|
|||
|---|---|---|---|
|
#18+
mayton, там же рабочий пример был... :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 22:54 |
|
||
|
C++ станет таким же удобным, как и Delphi! (о введении поддержке модулей)
|
|||
|---|---|---|---|
|
#18+
Что за эмоции? Ты-же software-инженер а не маленькая девочка. Держи себя в руках ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.09.2015, 23:11 |
|
||
|
C++ станет таким же удобным, как и Delphi! (о введении поддержке модулей)
|
|||
|---|---|---|---|
|
#18+
я чего-то не понял из этого pdf - чем это отличается от сейчашнего include? тем что мне не нужно указывать библиотеки при компиляции? скрыть какие-то фукнции или классы можно сейчас, просто определив их в другом заголовочном файле, не в том, который все подключают и подключать его где нужно у себя в файлах исходников. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 09:27 |
|
||
|
C++ станет таким же удобным, как и Delphi! (о введении поддержке модулей)
|
|||
|---|---|---|---|
|
#18+
alexy_black, include'ы сейчас обрабатывает препроцессор. Модули обрабатывает компилятор. Модули - способ уйти от заголовочных файлов и связанных с их использованием проблем. Как минимум, ускорит компиляцию, т.к. не придётся каждый раз "парсить" включаемые заголовки. Избавит от стражей включения. Решит проблему порядка включения заголовочных файлов. Ну и позволит лучше управлять области видимости. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 10:08 |
|
||
|
C++ станет таким же удобным, как и Delphi! (о введении поддержке модулей)
|
|||
|---|---|---|---|
|
#18+
BagaBagaМодули - способ уйти от заголовочных файлов и связанных с их использованием проблем сколько лет на это потребуется? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 10:48 |
|
||
|
C++ станет таким же удобным, как и Delphi! (о введении поддержке модулей)
|
|||
|---|---|---|---|
|
#18+
BagaBaga, я сейчас использую pragma once - несколько последних проектов вообще не используют include guard. студия поддрежирвает, гцц поддреживает, кланг поддреживает... на сколько я понял, с модулями тоже нужно просматривать будет - то есть компилятор должен знать например, что у модуля X интерфейс такой, а вот эта спецификация шаблона запрещена. то есть компилятору нужно будет просмотреть весь тот же заголовочный файл. так же как и при include. у меня была проблема с рекурсивным включением файлов.. но потом я прочитал что это признак плохого дизайна, и это оказалось действительно так в моем случаи (когда приходится объявлять class foo; из другого header'а). сейчас от этого избавляюсь, дизайн становится лучше. но мне кажется, что модули эту проблему тоже не решат :) по-моему что реально лучше - так это то, что теперь можно реализовать абстракцию на языке - то есть до этого нужно было эмулировать модули, а сейчас нет - язык прямо поддерживает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 11:00 |
|
||
|
C++ станет таким же удобным, как и Delphi! (о введении поддержке модулей)
|
|||
|---|---|---|---|
|
#18+
Как-бы не получилось что МС обладает очередным своим диалектом С++ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 11:19 |
|
||
|
C++ станет таким же удобным, как и Delphi! (о введении поддержке модулей)
|
|||
|---|---|---|---|
|
#18+
maytonКак-бы не получилось что МС обладает очередным своим диалектом С++ это норма (с) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 11:22 |
|
||
|
C++ станет таким же удобным, как и Delphi! (о введении поддержке модулей)
|
|||
|---|---|---|---|
|
#18+
alexy_blackBagaBaga, я сейчас использую pragma once - несколько последних проектов вообще не используют include guard. студия поддрежирвает, гцц поддреживает, кланг поддреживает... на сколько я понял, с модулями тоже нужно просматривать будет - то есть компилятор должен знать например, что у модуля X интерфейс такой, а вот эта спецификация шаблона запрещена. то есть компилятору нужно будет просмотреть весь тот же заголовочный файл. так же как и при include. ... Не нужны будут заголовочные файлы. Данные об интерфейсе модуля хранятся в отдельной секции объектного файла, созданного при компиляции модуля. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 11:40 |
|
||
|
C++ станет таким же удобным, как и Delphi! (о введении поддержке модулей)
|
|||
|---|---|---|---|
|
#18+
чччДНе нужны будут заголовочные файлы. Данные об интерфейсе модуля хранятся в отдельной секции объектного файла, созданного при компиляции модуля. А смотреть-та как? Константы. Макросы. Сигнатурки. Как смотреть-та? Hex-редактором? РефлексИей? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 11:46 |
|
||
|
C++ станет таким же удобным, как и Delphi! (о введении поддержке модулей)
|
|||
|---|---|---|---|
|
#18+
maytonчччДНе нужны будут заголовочные файлы. Данные об интерфейсе модуля хранятся в отдельной секции объектного файла, созданного при компиляции модуля. А смотреть-та как? Константы. Макросы. Сигнатурки. Как смотреть-та? Hex-редактором? РефлексИей? Смотреть - сами исходники. А данные из скомпилированных модулей нужны сборщику и, возможно, твоей IDE для всякого там автокомплита и браузинга. Конечно, возможна поставка только скомпиленного модуля без исходника. Тогда интерфейс будет доступен только компилятору да IDE. Ну, обрубок модуля может поставляться, для удобства (типа нынешнего .h-файла). Или документация. Delphi так и живет... :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 12:09 |
|
||
|
C++ станет таким же удобным, как и Delphi! (о введении поддержке модулей)
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 12:30 |
|
||
|
C++ станет таким же удобным, как и Delphi! (о введении поддержке модулей)
|
|||
|---|---|---|---|
|
#18+
ZeroMQ Модули в clang. Тут можно примерно посмотреть, как все, возможно, будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 12:32 |
|
||
|
C++ станет таким же удобным, как и Delphi! (о введении поддержке модулей)
|
|||
|---|---|---|---|
|
#18+
ZeroMQ, неа, там тоже заголовочные файлы остались, все также. просто добавляешь один файл, foo.modulemap - это файл описания модуля. он используется заголовочные файлы, в нем написано что импортировать, что приватно и т.д. вот и все. эта вся байда не будет работать без заголовочных файлов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 12:52 |
|
||
|
C++ станет таким же удобным, как и Delphi! (о введении поддержке модулей)
|
|||
|---|---|---|---|
|
#18+
alexy_black... неа, там тоже заголовочные файлы остались, все также. просто добавляешь один файл, foo.modulemap - это файл описания модуля. он используется заголовочные файлы, в нем написано что импортировать, что приватно и т.д. вот и все. эта вся байда не будет работать без заголовочных файлов. Заголовочные файлы остались, куда ж без старого кода. Но с модулями можно и без них. В описании сказано, что возможны варианты реализации. Что именно будет - станет известно с выходом Upd1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 12:59 |
|
||
|
C++ станет таким же удобным, как и Delphi! (о введении поддержке модулей)
|
|||
|---|---|---|---|
|
#18+
maytonКак-бы не получилось что МС обладает очередным своим диалектом С++как будто сейчас как то по другому дело обстоит ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 14:59 |
|
||
|
C++ станет таким же удобным, как и Delphi! (о введении поддержке модулей)
|
|||
|---|---|---|---|
|
#18+
чччД, пришьем к ... рукав! ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 15:25 |
|
||
|
C++ станет таким же удобным, как и Delphi! (о введении поддержке модулей)
|
|||
|---|---|---|---|
|
#18+
prog2012чччД, пришьем к ... рукав! ))) Куда мы денемся. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2015, 15:58 |
|
||
|
|

start [/forum/topic.php?fid=57&fpage=43&tid=2018817]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
41ms |
get topic data: |
19ms |
get forum data: |
2ms |
get page messages: |
68ms |
get tp. blocked users: |
1ms |
| others: | 291ms |
| total: | 451ms |

| 0 / 0 |
