C ++ 11 alignof на нестатических членах данных без объекта - PullRequest
3 голосов
/ 19 ноября 2011

В C ++ 11 можно ли использовать alignof для нестатических членов-данных без объекта?

Если у меня есть класс, например,

class A 
{
   int num; 
   unsigned char letter;
};

, могу ли я использовать alignof(A::letter); аналогично расширенному размеру синтаксиса (например, sizeof(A::letter);)?

1 Ответ

4 голосов
/ 19 ноября 2011

Да.Изменения, которые позволили это для sizeof, также применяются к alignof. Вот одна из статей, предлагающих изменения для sizeof.По сути, это делается путем изменения значения неоцененных операндов, а alignof использует неоцененный операнд.

Попытка сделать это в компиляторе, который утверждает, что поддерживает alignof, Clang (top of trunk), сработала для меня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...