Кробки в C обычно не влияют на смысл программы, за исключением редких ситуаций:
Кробки могут предотвратить поиск имени в зависимости от аргумента (ADL) при вызовах функций. В то время как форма fun(arg) учитывает дружественные функции области пространства имен через ADL, форма (fun)(arg) этого не делает, что обеспечивает точный выбор функции.
В контекстах списка ( аргументы функции, списки инициализаторов), оператор запятая применяется только в круглых скобках. Круглые скобки вида a, (b, c), d позволяют использовать оператор запятой, а a, b, c, d — нет. двусмысленность в ситуациях «неприятного анализа», когда конструкция может быть либо объявлением, либо выражением. Заключив тип функционального стиля в круглые скобки, его можно четко идентифицировать как выражение, избегая неоднозначности синтаксического анализа. выражения. Если операндом decltype(e) является невычисленное lvalue, то заключение его в круглые скобки (decltype((e))) выводит константную ссылку на lvalue (&).
Круглые скобки могут предотвратить ошибки в макросах препроцессора, управляя расширением макросов. Например, использование круглых скобок вокруг параметров макроса позволяет избежать проблем с приоритетом операторов, а заключение вызовов функций в круглые скобки защищает от нежелательных подстановок макросов.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3