Google C++ Style Guide
Лично у меня некоторые позиции вызвали удивление:
- запрет на передачу из функции out параметров по ссылке
- запрет перегрузки операторов
- запрет перегрузки функций
- запрет на параметры по умолчанию
- запрет на использование исключений (привет, hardcase ;) )
- запрет на использование streams
По оформлению кода:
- использование Interface суффикса вместо I префикса
- запрет на венгерскую нотацию
Любопытно, кто что думает по поводу сабжа?
запрет на передачу из функции out параметров по ссылке
запрет перегрузки операторов
запрет перегрузки функций
запрет на параметры по умолчанию
Дабы криворукий пользователь не смог неверно истрактовать и использовать. (сюда же и исключения наверно подходят, дабы ими бездарно не бросались).
использование Interface суффикса вместо I префикса
запрет на венгерскую нотацию
Это мелкософт-style
- запрет на передачу из функции out параметров по ссылке
- запрет перегрузки операторов
- запрет перегрузки функций
- запрет на параметры по умолчанию
- запрет на использование исключений (привет, hardcase ;) )
- запрет на использование streams
И тебе здравствуй :)
Все эти пункты уменьшают неоднозначность восприятия программы новыми людьми. Отказ от возбуждаемых исключений повышает стабильность программы. По поводу отказов от стримов, сказать не могу, возможно, это следствие отказа от перегрузки операторов.
По оформлению кода:
- использование Interface суффикса вместо I префикса
- запрет на венгерскую нотацию
Суффикс Interface видимо читать проще, но вообще на любителя (хотя мне больше кажется, что это для того, чтобы не походить на Микрософт).
Венгерская нотация в той форме, в которой она использовалась в Микрософт была однозначно провальной, это было еще у Спольски разжевано (хотя да, он известный микрософтовский тролль).
p.s. в Целом да, я написал то же что и oxotnik333, да простит его Аллах.
p.s. в Целом да, я написал то же что и oxotnik333, да простит его Аллах.
осталось голосовалку приделать, кто понятней объяснил ;)