Objective C-объявление анонимного объединения

#objective-c

#objective-c

Вопрос:

Я получаю предупреждение для приведенного ниже кода, если я объявляю это анонимное объединение. Это говорит о том, что экземпляр или переменная не были созданы. Если я создам переменную для этого определения объединения, она будет работать нормально. Является ли это тем, что анонимное объединение нельзя использовать в Objective C.

 @implementation rs

union{
   int a[10];
};

@end
  

Комментарии:

1. Чего именно вы пытаетесь достичь с помощью этого объявления?

2. Это похоже на перекрытие памяти. И устранение потерь памяти. это объединение содержит около 4 переменных, объявленных в моей программе, но я не включил его сюда.

3. Обратите внимание, что объединение похоже на определение типа. Если у вас нет переменной такого типа, память не выделяется, поэтому тип довольно бесполезен.

Ответ №1:

Это то же самое, что и в C. Если вы скомпилируете программу на C с анонимным объединением, подобным тому, которое вы опубликовали, вы также получите предупреждение.