Является синтаксисом для компоновки хост-компонента.
Является экспериментальной функцией псевдокласса CSS CSS, которая выбирает the shadow host of the shadow DOM containing the CSS it is used inside
( Ссылка )
Является синтаксисом для стилизации определенного класса вне любого текущего элемента. Класс должен быть применен к элементу за пределами текущего элемента.
Более подробную информацию о контексте угловых приложений можно найти в в этом сообщении в блоге .
Есть ли способ заставить функцию constexpr не оцениваться во время компиляции [?]
blockquote>Если вы можете изменить функцию
constexpr
, добавив неиспользуемый параметр, Вы можете принудительно выполнить оценку во время выполнения, передав значение времени выполнения.Я имею в виду ... предположим, у вас есть следующая
constexpr
функцияconstexpr int getVal () { return 0; }
, которую вы можете использовать следующим образом
constexpr auto a = getVal(); auto b = getVal();
и (игнорируя правило "как есть" ) вы уверены, что
getVal()
вычисляется при инициализации во время компиляцииa
, но вы не знаете, вычислена ли она во время компиляции или во время выполненияb
.Но если вы измените функцию следующим образом
constexpr int getVal (int) { return 0; }
вы можете написать
int c = 1; constexpr auto a = getVal(0); auto b = getVal(c);
, теперь вы можете быть уверены, что
getVal()
вычисляется при инициализации во время компиляцииa
(потому чтоa
- этоconstexpr
, а0
- литерал), и это вычисляется во время инициализацииb
(потому чтоc
нельзя использовать в выраженииconstexpr
).Вы также можете проверить, что при записи
int c = 1; constexpr auto a = getVal(c);
вы получаете ошибку компиляции, потому что
a
должен быть инициализирован во время компиляции, ноgetVal(c)
не может быть вычислен во время компиляции.