Russian Qt Forum
Ноябрь 23, 2024, 14:33 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: 1 [2]   Вниз
  Печать  
Автор Тема: Пробелы против табов  (Прочитано 87374 раз)
blood_shadow
Гость
« Ответ #15 : Апрель 22, 2011, 18:18 »


буээээ.... самый отвратный стиль форматирования)))
закрывающая скобка должна стоять под открывающей  Подмигивающий

сам такой стиль больше люблю, хотя в Qt Coding Style говорится что надо писать как в первом
варианте Улыбающийся
Записан
asvil
Гость
« Ответ #16 : Апрель 22, 2011, 19:00 »

Цитировать
буээээ.... самый отвратный стиль форматирования)))
Цитировать

Имитация пайтона. Зачем операторы блока кода, если все равно ставяться отступы.
Записан
ufna
Гость
« Ответ #17 : Апрель 22, 2011, 20:05 »

Код:
int f(int a){// comment
<tab>int a;  // comment
<tab>g(a);   // comment
}            // comment

Вот +1 к этому.
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #18 : Апрель 23, 2011, 01:33 »

Да че вы к скобке прицепились?))) мне было лень ставить энтер и отбивать ещё сколько-то там пробелов до еще 1го коммента, всего-то! Так-то да, скобку на новой строке ставлю.
Записан
Sancho_s_rancho
Гость
« Ответ #19 : Апрель 23, 2011, 08:28 »

Ctrl+A, Ctrl+I и всё пофик =) спасибо QtCreator - давно такими вопросами не заморачиваюсь =)
для совместимости выставил отступы пробелами, размер таба = 4 пробела и забыл.
Полностью поддерживаю. Ctrl+A, Ctrl+I, а когда уже много наваял, то и Ctrl+S.
Записан
brankovic
Гость
« Ответ #20 : Апрель 23, 2011, 13:10 »

Злой Табизмы Злой

Как два различных полюса,
Во всём враждебны мы.
За свет и мир мы боремся,
Они — за царство тьмы.

1. табист думает, что пользуется только табами, но иногда пробелы вкрадываются, а он их не замечает (ts=3):

Код:
   size_t size ( void ) const { return m_size; }
   bool empty ( void ) const { return m_size == 0; }

при ts=5 получаем:

Код:
     size_t size ( void ) const { return m_size; }
   bool empty ( void ) const { return m_size == 0; }

2. табист тоже знает, что сверхдлинные строки это плохо, но ничего не может поделать:

Код:
void
calculate_some (sieve_engine &e, matrix_cache &mc, grid_pool &gp,
                memory_engine &me, matrix const &adj,
                matrix_list const &input, driver &d, progress &pro)
{

при смене размера таба всё уедет:

Код:
void
calculate_some (sieve_engine &e, matrix_cache &mc, grid_pool &gp,
            memory_engine &me, matrix const &adj,
            matrix_list const &input, driver &d, progress &pro)
{

аналогичная проблема с многострочными операторами:

Код:
   if (e)
      throw std::runtime_error (
         lg (LVL_FATAL) << context_mark ("db_sync") << context_mark (objid)
                        << " cant sync object with db, sql error: "
                        << quote (e.what ()) << " (db is possibly corrupted);"
                        << " time: " << timer.secs ()
                        << to <std::string> ());

3. код табиста при ts=4 (очень красиво):

Код:
            T & operator[]  ( UInt32 index )        { return *At(index); }
    const   T & operator[]  ( UInt32 index ) const  { return *At(index); }

он же при ts=3 (пока сносно):

Код:
         T & operator[] ( UInt32 index )     { return *At(index); }
   const T & operator[] ( UInt32 index ) const  { return *At(index); }

он же при ts=6:

Код:
                  T & operator[]    ( UInt32 index )        { return *At(index); }
      const T & operator[]    ( UInt32 index ) const  { return *At(index); }

всё уехало, потому что таб имеет переменную длину, а слово const константную. Поэтому 2 таба не равны 1 табу и слову const.

4. код табиста невозможно преобразовать к пробелам простой заменой:

в прошлом примере, если заменить табы на 4 пробела, то получится:

Код:
            T & operator[]    ( UInt32 index )        { return *At(index); }
    const    T & operator[]    ( UInt32 index ) const    { return *At(index); }

потому что таб иногда сжимается при отображении, последний в серии таб может занимать места как 4, 3, 2 или 1 пробел.

5. табист думает, что защищает свой образ мыслей и любимый редатор..

..на самом деле он защищает собственное невежество относительно любимого редактора. Любой программистский редактор умеет экспендить табы в пробелы. Если ваш не умеет, то это значит, что вы пользуетесь редактором общего назначения. Попробуйте использовать профессиональный инструментарий, это повысит эффективность работы.
Записан
Страниц: 1 [2]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.123 секунд. Запросов: 23.