|
Вопрос к знатокам Си++ (Си) |
☑ |
0
Кирпич
25.12.15
✎
09:54
|
вот в файле от 1с такое написано
enum AppCapabilities
{
eAppCapabilitiesInvalid = -1,
eAppCapabilities1 = 1,
eAppCapabilitiesLast = eAppCapabilities1,
};
Вопрос: А что значит запятая в конце "eAppCapabilitiesLast = eAppCapabilities1," ?
|
|
1
Маратыч
25.12.15
✎
09:56
|
(0) А оно точно работает? :) Первый раз такое вижу, по идее, это ошибка синтаксиса.
|
|
2
Кирпич
25.12.15
✎
09:57
|
(1) работает
|
|
3
Маратыч
25.12.15
✎
10:01
|
А, нашел:
В общем, игнорируется запятая последняя.
|
|
4
Кирпич
25.12.15
✎
10:03
|
(3) я то думал там что-то умное. нафиг её вообще писать тогда.
|
|
5
Маратыч
25.12.15
✎
10:03
|
+(3) Why does C++09 permit a final trailing comma? Many enumerations are machine-generated. It's easier and simpler to generate an enum declaration where every enumerator has a trailing comma. Because the trailing comma has no significance in C++ (it doesn't change the semantics of the enumerator or the enumeration), C++09 now accepts trailing commas after the final enumerator.
Т.е. для удобства добавлено в случае автоматически генерируемых перечислений.
|
|
6
Кирпич
25.12.15
✎
10:05
|
(5) "для удобства добавлено в случае автоматически генерируемых перечислений."
теперь понятно, почему в Си всё так запутано и всего так много. потому что добавляли кому что хочется :)
|
|
7
Фрэнки
25.12.15
✎
10:06
|
некритичная ошибка синтаксиса.
Сам стиль того, что именованный нумератор закрывается идентификатором с суффиксом Last намекает на то, что предполагается контроль за состоянием списка значений в программном коде.
Вообще, списки именованных значений нужны только для удобства написания кода. Тем более, когда часть кода может генериться в процедурах прекомпиляции в разных платформенных инструментах, наподобие рапиды какой-нибудь
|
|
8
Фрэнки
25.12.15
✎
10:09
|
(6) это не в самом Си запутано. Запутано в приложениях, его использующих, которые создаются с учетом возможного полиморфизма, инкапсуляций и всего прочего
|
|
9
Кирпич
25.12.15
✎
10:11
|
(8) да и фиг с ним. выяснили и слава богу.
|
|