Модераторы: bsa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Стиль кодирования 
V
    Опции темы
Хоббит
Дата 23.12.2008, 11:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1263
Регистрация: 6.11.2005

Репутация: нет
Всего: 1



Простой поиск по гуглу, дал сразу кучу вариантов, беглый просмотр которых, показал, что они сильно отличаются.
1. http://www.possibility.com/Cpp/CppCodingStandard.html
2. http://geosoft.no/development/cppstyle.html
3. http://google-styleguide.googlecode.com/sv...nk/cppguide.xml

3 стиль компании google.

А какого стиля придерживаетесь вы? Есть ли наиболее популярный стиль?
Наиболее важные вопросы для меня, именование классов, полей, функций доступа к полям, методов, аргументов методов.
PM MAIL   Вверх
vinter
Дата 23.12.2008, 11:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Explorer
****


Профиль
Группа: Завсегдатай
Сообщений: 2735
Регистрация: 1.4.2006
Где: Н.Новгород

Репутация: 8
Всего: 56



а как кто относится к данному правилу


--------------------
Мой блог
PM MAIL WWW   Вверх
Alek86
Дата 23.12.2008, 11:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1299
Регистрация: 30.1.2007
Где: Киев

Репутация: нет
Всего: 25



как говорилось в какой-то умной книжке - неважно, какой стиль выбрать - главное его придерживаться
а программисты-неновички достаточно легко читают код, написанный в любом стиле


--------------------
user posted image    user posted image
PM MAIL   Вверх
SABROG
Дата 23.12.2008, 11:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Hacker
****


Профиль
Группа: Завсегдатай
Сообщений: 2481
Регистрация: 18.9.2006

Репутация: 1
Всего: 91



Придерживаюсь стиля разработчиков Qt.


--------------------
Национальная группа Russian Federation на QtCentre.
PM MAIL   Вверх
chaos
Дата 23.12.2008, 12:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Серийный программист
****


Профиль
Группа: Завсегдатай
Сообщений: 2979
Регистрация: 7.7.2004
Где: Екатеринбург

Репутация: нет
Всего: 44



мой ближе всего к стилю гугля smile
PM WWW   Вверх
NewDima
Дата 23.12.2008, 13:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 922
Регистрация: 20.2.2006
Где: <?here?>

Репутация: нет
Всего: 12



Цитата(vinter @ 23.12.2008,  18:32)
а как кто относится к данному правилу

вместе с этим мне не нравится необоснованность вот этого
PM ICQ   Вверх
vinter
Дата 23.12.2008, 13:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Explorer
****


Профиль
Группа: Завсегдатай
Сообщений: 2735
Регистрация: 1.4.2006
Где: Н.Новгород

Репутация: 8
Всего: 56



Цитата(NewDima @  23.12.2008,  14:00 Найти цитируемый пост)
вместе с этим мне не нравится необоснованность вот этого

вполне обосновано, это защита от неправильного использования переменной


--------------------
Мой блог
PM MAIL WWW   Вверх
NewDima
Дата 23.12.2008, 13:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 922
Регистрация: 20.2.2006
Где: <?here?>

Репутация: нет
Всего: 12



Цитата(vinter @ 23.12.2008,  20:08)
вполне обосновано, это защита от неправильного использования переменной

имхо, где попало, как фактически там написано, ставить не следует. Все-равно const не обеспечивает побитовую константность объектов
PM ICQ   Вверх
Fazil6
Дата 23.12.2008, 13:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1653
Регистрация: 3.5.2006
Где: Минск

Репутация: 7
Всего: 60



Цитата(NewDima @  23.12.2008,  13:35 Найти цитируемый пост)
имхо, где попало, как фактически там написано,

совсем не так там написано
PM MAIL   Вверх
UnrealMan
Дата 23.12.2008, 18:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 722
Регистрация: 30.3.2006

Репутация: 5
Всего: 32



Чтобы выбрать стиль google, надо быть отъявленным мазохистом smile 

Цитата
Use forward declarations to minimize use of #include in .h files.

Do not use a using-directive. 

Do only trivial initialization in a constructor. If at all possible, use an Init() method for non-trivial initialization. [это вообще жесть smile]

You must define a default constructor if your class defines member variables and has no other constructors. Otherwise the compiler will do it for you, badly. 

Use the C++ keyword explicit for constructors with one argument. 

When using inheritance, make it public.

All parameters passed by reference must be labeled const.

Do not use function overloading to simulate default function parameters.

We do not allow default function parameters.

We do not use C++ exceptions. smile 

We do not use Run Time Type Information (RTTI). smile

Use C++ casts like static_cast<>(). Do not use other cast formats like int y = (int)x; or int y = int(x);. 

Use streams only for logging.

Of the built-in C++ integer types, the only one used is int. 

Enumerators should be all uppercase with underscores between words: MY_EXCITING_ENUM_VALUE. 

Preprocessor directives should not be indented

У меня б через пару недель кодирования в таком стиле развилась бы жуткая депрессия smile 

Это сообщение отредактировал(а) UnrealMan - 23.12.2008, 18:13
PM MAIL   Вверх
vinter
Дата 23.12.2008, 18:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Explorer
****


Профиль
Группа: Завсегдатай
Сообщений: 2735
Регистрация: 1.4.2006
Где: Н.Новгород

Репутация: 8
Всего: 56



Цитата(UnrealMan @  23.12.2008,  19:13 Найти цитируемый пост)
Use C++ casts like static_cast<>(). Do not use other cast formats like int y = (int)x;


Цитата(UnrealMan @  23.12.2008,  19:13 Найти цитируемый пост)
Enumerators should be all uppercase with underscores between words: MY_EXCITING_ENUM_VALUE. 

а я вот с этим согласен


--------------------
Мой блог
PM MAIL WWW   Вверх
NewDima
Дата 23.12.2008, 18:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 922
Регистрация: 20.2.2006
Где: <?here?>

Репутация: нет
Всего: 12



Цитата(Fazil6 @ 23.12.2008,  20:58)
Цитата(NewDima @  23.12.2008,  13:35 Найти цитируемый пост)
имхо, где попало, как фактически там написано,

совсем не так там написано

Ок, строго рекомендуем использовать там где это надо. Ничего логичней не видел. Только это не совет вовсе
PM ICQ   Вверх
DSWK
Дата 23.12.2008, 18:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 22.12.2008

Репутация: нет
Всего: нет



Цитата(UnrealMan @  23.12.2008,  18:13 Найти цитируемый пост)
Чтобы выбрать стиль google, надо быть отъявленным мазохистом smile 

Не зря ведь они пишут 
Цитата
We do not use...
 smile
ИМХО, интересен стиль, предлагаемый в пункте 2 ( http://geosoft.no/development/cppstyle.html ). Сам его стараюсь придерживаться.
PM MAIL   Вверх
UnrealMan
Дата 23.12.2008, 21:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 722
Регистрация: 30.3.2006

Репутация: 5
Всего: 32



Цитата(DSWK @  23.12.2008,  18:51 Найти цитируемый пост)
ИМХО, интересен стиль, предлагаемый в пункте 2

smile  Много лажи.
PM MAIL   Вверх
bsa
Дата 24.12.2008, 00:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Прочитал кажется у Мейерса: правильный стиль - это единый стиль для всего проекта (ну, или хотя бы файла). В принципе, я местами согласен с гуглом и п2. Но гугл слишком ограничивает (буст нельзя, RTTI нельзя, exceptions нельзя...), а п2 вводит очень субъективные вещи - типа отступов между ключевым словом и скобкой или значением case и двоеточием.
Лично я считаю стиль, используемый в QT, наиболее оптимальным.
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0633 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.