Существует ли способ гарантировать, что функции членства являются виртуальными в D?

используйте опцию base в gulp.src

следующим образом:

gulp.src('your_file.js', {base: 'your_base_path'})
.pipe(/*...*/)

в вашем случае значение base должно быть lib/modules

например:

gulp.src('lib/modules/**/*.js', {base: 'lib/modules'})
.pipe(/*...*/)
.pipe(gulp.dest('lib/modules'))

это создаст то, что вы хотите:

lib
- modules
  - module1
    - public
      - js
        - file.js

Эта опция говорит gulp игнорировать базовую часть пути и обрабатывать оставшуюся часть пути как относительную и, следовательно, реплицировать это в десте

6
задан Ferruccio 15 April 2009 в 11:57
поделиться

3 ответа

Все функции-члены D по умолчанию являются виртуальными. Я не думаю, что есть какие-то компиляторы, которые фактически делают функции не виртуальными в качестве оптимизации. Вы можете сделать это вручную, пометив класс или функцию как "final".

5
ответ дан 10 December 2019 в 00:44
поделиться

FeepingCreature в основном корректен, за исключением шаблонных функций, которые нельзя сделать виртуальными.

2
ответ дан 10 December 2019 в 00:44
поделиться

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

1
ответ дан 10 December 2019 в 00:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: