Фигурные скобки должны использоваться для указания и согласования структуры при инициализации массивов и структур, отличных от нуля
Фигурные скобки должны использоваться для указания и согласования структуры при ненулевой инициализации массивов и структур.
Использование вложенных фигурных скобок в списках инициализаторов для сопоставления структур вложенных объектов в массивах, объединениях и структурах побуждает учитывать порядок инициализации сложных типов данных и делает код более читаемым. Например, использование вложенных фигурных скобок при инициализации ex1 облегчает просмотр вложенных массивов arr1 и arr2 в структуре ex1 инициализированы.
struct Example
{
int num;
int arr1[2];
int arr2[3];
};
//....
struct Example ex1 {1, {2, 3}, {4, 5, 6}}; //CompliantПравило не требует использования вложенных фигурных скобок, если нулевая инициализация массива, объединения или структуры с вложенными структурами является верхним уровнем, например:
struct Example ex1 {}; //CompliantЕсли инициализация массива, объединения или структуры, содержащей вложенные структуры, отличается от нуля и вложенные фигурные скобки не используются для отображения вложенной структуры, Polyspace ® помечает первый элемент первой вложенной структуры в списке инициализаторов. Например, в этом фрагменте кода Polyspace помечает число2 потому что он соответствует первому элементу вложенной структуры arr1 внутренняя конструкция ex1.
struct Example
{
int num;
int arr1[2];
int arr2[3];
};
//....
struct Example ex1 {1, 2, 3, 4, 5, 6}; // Non-compliantЕсли вы ожидаете нарушения правила, но не видите его, обратитесь к разделу Нарушения стандартов кодирования не отображаются.
| Группа: Деклараторы |
| Категория: Обязательно |