стиль форматирования
От: jyuyjiyuijyu  
Дата: 29.08.11 13:53
Оценка:
Всем привет
как на Ваш взгляд красивее писать заголовок функции ? (естественно когда он не помещается на одну строку)


вариант 1) код без изменений с MFC
BOOL AFXAPI AfxWinInit(_In_ HINSTANCE hInstance, _In_ HINSTANCE hPrevInstance,
    _In_z_ LPTSTR lpCmdLine, _In_ int nCmdShow)
{
    ...
}


вариант 2) MSVC++ почему то упорно при переносе строки так выравнивает (по первому параметру)
автоматически и ALT + F8 тоже весь код так автоформатируют
BOOL AFXAPI AfxWinInit(_In_ HINSTANCE hInstance, _In_ HINSTANCE hPrevInstance, 
                       _In_z_ LPTSTR lpCmdLine, _In_ int nCmdShow)
{
    ...
}


вариант 3) ну например GLIB и сорцы React OS так отформатированы
BOOL AFXAPI AfxWinInit(_In_ HINSTANCE hInstance, 
                       _In_ HINSTANCE hPrevInstance,
                       _In_z_ LPTSTR lpCmdLine, 
                       _In_ int nCmdShow)
{
    ...
}


вариант 4) так форматируют например исходники CRT (Microsoft Visual Studio 9.0\VC\crt\src)
BOOL AFXAPI AfxWinInit(
    _In_ HINSTANCE hInstance,
    _In_ HINSTANCE hPrevInstance,
    _In_z_ LPTSTR lpCmdLine,
    _In_ int nCmdShow)
{
    ...
}


какой самый лучший вариант и почему ? я реально долго использую то одно то другое
надоело

P.S кстати мой текущий вариант который я использую под номером 2
как же много времени убивается на форматирование кода если сильно увлечься то некогда
и писать будет

30.08.11 18:47: Перенесено из 'C/C++'
Re: стиль форматирования
От: uzhas Ниоткуда  
Дата: 29.08.11 13:59
Оценка: 2 (2) +6
Здравствуйте, jyuyjiyuijyu, Вы писали:

J>Всем привет

J>как на Ваш взгляд красивее писать заголовок функции ? (естественно когда он не помещается на одну строку)

ставлю на вариант 4.
имхо в сопровождении самый адекватный, для чтения приемлемо
Re: стиль форматирования
От: Centaur Россия  
Дата: 29.08.11 14:36
Оценка:
Здравствуйте, jyuyjiyuijyu, Вы писали:

J>Всем привет

J>как на Ваш взгляд красивее писать заголовок функции ? (естественно когда он не помещается на одну строку)

J>какой самый лучший вариант и почему ? я реально долго использую то одно то другое

J>надоело

Писать нужно Так, как Принято в Проекте или в Команде. Если проект — новый, а в команде ты один — пиши как нравится.
Re: стиль форматирования
От: 5er Россия  
Дата: 29.08.11 14:37
Оценка: 1 (1)
Здравствуйте, jyuyjiyuijyu, Вы писали:

J>какой самый лучший вариант и почему ? я реально долго использую то одно то другое

J>надоело

Вариант 4, но с выровненными параметрами:

BOOL AFXAPI AfxWinInit(
        _In_   HINSTANCE  hInstance, 
        _In_   HINSTANCE  hPrevInstance,
        _In_z_ LPTSTR     lpCmdLine, 
        _In_   int        nCmdShow)
{
    ...
}
Re[2]: стиль форматирования
От: B0FEE664  
Дата: 29.08.11 14:59
Оценка: +2
Здравствуйте, 5er, Вы писали:

Вариант 5:

BOOL AFXAPI AfxWinInit
(
  _In_   HINSTANCE hInstance, 
  _In_   HINSTANCE hPrevInstance,
  _In_z_ LPTSTR    lpCmdLine, 
  _In_   int       nCmdShow
)
{
  ...
}
И каждый день — без права на ошибку...
Re[3]: стиль форматирования
От: Слесарь с завода  
Дата: 29.08.11 15:40
Оценка: :)
Здравствуйте, B0FEE664, Вы писали:

BFE>Когда я слышу слова "Cтандарт C++", моя рука тянется к пистолету.


"Стандарт сам по себе не является безупречно составленным документом (в котором бы не было неоднозначных толкований или откровенно противоречащих друг другу или здравому смыслу положений). Привести его в порядок — уже довольно сложная задача для комитета"(c) Masterkent
Re[2]: стиль форматирования
От: Sir-G  
Дата: 29.08.11 17:03
Оценка:
Здравствуйте, Centaur, Вы писали:

C>Писать нужно Так, как Принято в Проекте или в Команде. Если проект — новый, а в команде ты один — пиши как нравится.

Стопудово!
Форматирование -- вопрос религии. Можно обосновать любую точку зрения. =))

P.S. Сам использую первый вариант.
Re[2]: стиль форматирования
От: Alca Украина  
Дата: 30.08.11 13:53
Оценка:
BOOL AFXAPI 
AfxWinInit(
    _In_   HINSTANCE  hInstance,        ///< doxy comment 1
    _In_   HINSTANCE  hPrevInstance,    ///< doxy comment 2
    _In_z_ LPTSTR     lpCmdLine,        ///< doxy comment 3
    _In_   int        nCmdShow          ///< doxy comment 4
)
{
    ...
}
Re: стиль форматирования
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 30.08.11 15:42
Оценка:
Здравствуйте, jyuyjiyuijyu, Вы писали:

J>Всем привет

J>как на Ваш взгляд красивее писать заголовок функции ? (естественно когда он не помещается на одну строку)

Дожили, щас в КСВ будут пробелы обсуждать

Дети, валите в профильные нахрен !
Re: Главный вопрос - прбелы или табы! (-)
От: Ops Россия  
Дата: 30.08.11 16:27
Оценка: :)))
Переубедить Вас, к сожалению, мне не удастся, поэтому сразу перейду к оскорблениям.
Re: стиль форматирования
От: azzx Россия  
Дата: 30.08.11 17:59
Оценка:
Здравствуйте, jyuyjiyuijyu, Вы писали:


J>какой самый лучший вариант и почему ? я реально долго использую то одно то другое

J>надоело

Это зависит от того, с какой целью.
Четвёртый вариант, например, можно ещё и комментариями к параметрам снабдить, если оно имеет смысл.
Re: стиль форматирования
От: SV.  
Дата: 30.08.11 18:16
Оценка:
Здравствуйте, jyuyjiyuijyu, Вы писали:

J>вариант 2) MSVC++ почему то упорно при переносе строки так выравнивает (по первому параметру)

J>автоматически и ALT + F8 тоже весь код так автоформатируют
J>
J>BOOL AFXAPI AfxWinInit(_In_ HINSTANCE hInstance, _In_ HINSTANCE hPrevInstance, 
J>                       _In_z_ LPTSTR lpCmdLine, _In_ int nCmdShow)
J>{
J>    ...
J>}
J>


J>вариант 3) ну например GLIB и сорцы React OS так отформатированы

J>
J>BOOL AFXAPI AfxWinInit(_In_ HINSTANCE hInstance, 
J>                       _In_ HINSTANCE hPrevInstance,
J>                       _In_z_ LPTSTR lpCmdLine, 
J>                       _In_ int nCmdShow)
J>{
J>    ...
J>}
J>


Оба варианта хороши, но! Требуют смешивать пробелы с табами или мириться с неровным выравниванием. Я все жду, пока найдется контора, которая додумается реализовать для моноширинного набора "гибкую табуляцию", которая — одна — сдвинет текст на подходящее расстояние вправо (определяется заданными правилами). Что именно надо, по-моему, очевидно, и формализуется легко.
Re: стиль форматирования
От: Ночной Смотрящий Россия  
Дата: 31.08.11 12:09
Оценка:
Здравствуйте, jyuyjiyuijyu, Вы писали:

J>какой самый лучший вариант


Мне нравится 4.

J> и почему ?


Баланс между сложностью поддержания и читаемостью.

J>как же много времени убивается на форматирование кода


Вот вот.
Re: стиль форматирования
От: B0FEE664  
Дата: 31.08.11 12:28
Оценка:
>30.08.11 18:47: Перенесено из 'C/C++'
логично

J>какой самый лучший вариант и почему ? я реально долго использую то одно то другое

J>надоело

Единственная цель форматирование — облегчить чтение. Мне легко читать код, когда:
— код отформатирован в табличный вид
— разные сущности имеют разный вид (классический пример — макросы заглавными буквами)
— слова отделены пробелами
— открывающая и закрывающая скобки находятся: либо в одной строке, либо в одном столбце

Удобство редактирования для меня играет последнюю роль...
И каждый день — без права на ошибку...
Re: стиль форматирования
От: abibok  
Дата: 31.08.11 14:54
Оценка:
Если заголовок функции помещается в одну строку (при разумной длине строки ~120 символов), то пишем в одну строку. Иначе — вариант 4, когда каждый аргумент, включая первый, пишутся с новой строки. Перед каждым аргументом в таком случае делаем отступ в 1 таб. Никакого выравнивания названий не делаем, т.е. после этого первого таба в строке могут встречаться только одинарные пробелы. Два пробела или таб — нарушение.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.