Вам необходимо использовать Входные украшения .
Например:
// imports
import IconButton from "@material-ui/core/IconButton";
import InputAdornment from "@material-ui/core/InputAdornment";
import SearchIcon from "@material-ui/icons/Search";
// render
)
}}
/>
Вот демо:
const {
TextField,
InputAdornment,
IconButton,
SearchIcon,
Icon
} = window['material-ui'];
class App extends React.Component {
render() {
return (
search
)
}}
/>
);
}
}
ReactDOM.render( , document.getElementById('root'));
Трудно сказать, потому что это зависит главным образом от Вашего проекта - и конечно качество LTCG, обеспеченного VS2005 (с которым у меня нет достаточного опыта судить). В конце необходимо будет иметь размеры.
Однако интересно, почему у Вас есть так много проблемы с дополнительной продолжительностью сборки конечных версий. Необходимо только раздать восстанавливаемые, стабильные, имеющие версию двоичные файлы, которые имеют восстанавливаемые или заархивированные источники. Я редко видел основания для частых, возрастающих сборок конечных версий.
рекомендуемая установка для команды - это: Разработчики обычно создают только возрастающую отладку, основывается на их машинах. Создание выпуска должно быть полной сборкой от управления исходным кодом до распространяемого файла (двоичные файлы или даже установить), с новым номером версии и маркировкой/архивацией источников. Только они должны быть даны внутренним тестерам / клиенты.
Идеально, Вы переместили бы полную сборку в отдельную машину или возможно виртуальную машину на хорошем ПК. Это дает Вам стабильную среду для Ваших сборок (включает, сторонние библиотеки, переменные среды, и т.д.).
Идеально, эти сборки должны быть автоматизированы ("один щелчок от управления исходным кодом для установки") и должны ежедневно работать.
Это позволяет компоновщику делать фактическую компиляцию кода, и поэтому это может сделать больше оптимизации, такой как встраивание.
, Если Вы не используете LTCG, компилятор является единственным компонентом в процессе сборки, который может встроить функцию, как в замене "вызов" к функции с содержанием функции, которая обычно намного быстрее. Компилятор только сделал бы так так или иначе для функций, где это приводит к улучшению.
Это может поэтому только сделать так с функциями, которых это имеет тело. Это означает, что, если функция в cpp файле вызывает другую функцию, которая не реализована в том же cpp файле (или в заголовочном файле, который включен) затем это не имеет фактического тела функции и не может поэтому встроить его.
, Но если Вы используете LTCG, это - компоновщик, который делает встраивание, и это имеет все функции в весь cpp файлов всего проекта минус библиотечные файлы, на которые ссылаются, которые не были созданы с LTCG. Это дает компоновщику (который становится компилятором) намного больше для работы с.
, Но это также заставляет Вашу сборку занять больше времени, особенно при выполнении возрастающих изменений. Вы могли бы хотеть включить LTCG в своей конфигурации сборки конечных версий.
Примечание, что LTCG не является тем же как ведомой профилем оптимизацией.
Я нашел, что оборотные стороны являются более длительным временем компиляции и что .obj файлы, сделанные в том режиме (включенный LTCG), могут быть действительно крупными. Например, .obj файлы, которые могли бы быть 200-500k, были о 2-3mb. Это только к произошедшему со мной, что, компилируя набор проектов в моей цепочке, ведомой к папке на 2 ГБ, объем которой был .obj файлами.
Я знаю, что парни в Bungie использовали его для Halo3, единственный довод "против", который они упомянули, был то, что это иногда портило их детерминированные данные воспроизведения.
Вы представили свой код и определили потребность в этом? Мы на самом деле выполняем наши серверы почти полностью в режиме отладки, но особый случай несколько файлов, которые представили как очень важная производительность. Это работало отлично и сохранило вещи debuggable, когда существуют проблемы.
Не уверенный то, какое приложение Вы делаете, но разбиваете структуры данных для соответствия способу, которым они были обработаны в коде (для лучшей когерентности кэш-памяти) было намного большей победой для нас.
Я также не вижу проблем с дополнительным временем компиляции с помощью разовой ссылкой генерации кода со сборкой конечных версий. Я только создаю свою версию выпуска однажды в день (в течение ночи), и использую модульный тест и отлаживаю сборки в течение дня.