используйте опцию 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 игнорировать базовую часть пути и обрабатывать оставшуюся часть пути как относительную и, следовательно, реплицировать это в десте
Все функции-члены D по умолчанию являются виртуальными. Я не думаю, что есть какие-то компиляторы, которые фактически делают функции не виртуальными в качестве оптимизации. Вы можете сделать это вручную, пометив класс или функцию как "final".
FeepingCreature в основном корректен, за исключением шаблонных функций, которые нельзя сделать виртуальными.
Я считаю, что FeepingCreature - это правильно, но, кроме того, я думаю, вы можете предположить, что такие оптимизации будут учитываться только компилятором если он непосредственно создает исполняемый файл из источников.