🦥Alex Fails
там надо смотреть на вид регэкспа
🦥Alex Fails
есть же несколько спек по ним
Square
http://cpprocks.com/files/c++11-regex-cheatsheet.pdf
🦥Alex Fails
Yevhen
А не проще написать using namespase std; что бы каждый раз не писать std::
вообще нет. лучше уж тогда написать using std::string;
SHEVA
что за бред
Yevhen
?
SHEVA
подключил стандартное пространство имен и погнал, в коде меньше всякой лопушни
SHEVA
и красивее
Yevhen
что за бред
SHEVA
всм?
Yevhen
http://ru.stackoverflow.com/questions/415847/%D0%9F%D1%80%D0%BE%D1%81%D1%82%D1%80%D0%B0%D0%BD%D1%81%D1%82%D0%B2%D0%BE-%D0%B8%D0%BC%D0%B5%D0%BD-using-namespace-std
SHEVA
Хм...
dµks
подключил стандартное пространство имен и погнал, в коде меньше всякой лопушни
Потому что с,например, стд в начале я явно вижу что и откуда
SHEVA
чет ты непоятно нааисал, но вроде догнал
Andrey
вот я и думаю, нафига в некотором коде в хидере объявляют namespace, а потом внизу хидера пишут using namespace с этим неймспейсом. Т.е. не боятся пересечений пространств имен.
Andrey
А покажи пример
да, это там где я работаю ныне натыкаюсь на такое юзание. На прошлой работе я с этим боролся. А тут как бы не влияю, т.к. ща не плюсовых проектах.
Andrey
контору палить не буду )
Andrey
хех )
🦥Alex Fails
Ну лан
Andrey
вот я к своим плюсовикам хожу, и говорю мол не надо. А они типа так у них повелось. даже в кодгайде нашел. Мрак
🦥Alex Fails
Жесть
Andrey
т.е. словно namecpace выучили типо красиво, все дела. Ну, напишем, значит. В прошлой конторе так и делали )
🦥Alex Fails
в общем...
🦥Alex Fails
Andrey
во-во
Andrey
😱🔫
Andrey
Майерс им не указ
🦥Alex Fails
Ну, если есть возможность повлиять на код гайды
🦥Alex Fails
То надо ей воспользоваться
🦥Alex Fails
Правда, это начинание будет очень сильно восприниматься в штыки
Andrey
да жаль, что я ща не в основной плюсовой команде. Так бы лоббировал бы. Т.е. я в тех плюсах которые я сопровождаю так естественно не делаю. Но это не основной плюсовый проект. Но когда нашел это в кодгайде. Я блин офигел.
Denis
программисты
Denis
Denis
читал кто-нибудь эту книгу?
Denis
судя по содержанию неплохая
Denis
выбираю ту, с которой лучше начать изучать алгоритмы и структуры данных
Denis
1324 страницы
🦥Alex Fails
любая система обладает инертностью
Denis
читал?
Ilya
Но я начинал с кнута
Denis
осилил кнута?
Anonymous
Никто не осилил
Ilya
осилил кнута?
Не всё, конечно. Яжнипраграммист.
Richard
любая система обладает инертностью
Это-то понятно, но порой это переходит все допустимые границы.
Richard
У нас есть один кадр, который считает, что использование старых подходов это нормально. goto в С++ коде не редкость, методы/функции на пару тысяч строк кода - тоже.
Richard
40+
Andrey
Leonid
У нас есть один кадр, который считает, что использование старых подходов это нормально. goto в С++ коде не редкость, методы/функции на пару тысяч строк кода - тоже.
гоуту в плюсовом коде норм тема, там где он действительно нужен. Но если методы на пару тысяч строк кода, то скорее всего он не знает где нужно а где нет)
Richard
гоуту в плюсовом коде норм тема, там где он действительно нужен. Но если методы на пару тысяч строк кода, то скорее всего он не знает где нужно а где нет)
а где нужно? просто я сейчас не могу припомнить кода из практики, где он был бы реально нужен. Ну и к тому же хрен с ним если в одном уровне вложенности. Но когда это идет так: if( condition1 ) { goto Label; } /* code */ if( condition2 ) { if( condition3 ) { if( condition4 ) { Label: /* code */ } } } это уже аут, на мой взгляд.
Yevhen
Никто не сталкивался с такой проблемой в Qt? Есть класс, который посылает сигналы void TabController::loadFiletoTab(const QString &file) { ... emit tabStateChanged(); std::thread thr(&ScreenImage::loadImage, wdg, std::move(img), std::move(file)); thr.detach(); } и есть главное окно, которое эти сигналы обарабывает. connect(_pTabController, SIGNAL(tabStateChanged()), this, SLOT(checkTabState())); Если убрать std::thread , то главное окно обрабатывает сигнал корректно иначе оно никак на него не реагирует. Как заставить главное окно обрабатывать сигналы и оставить std::thread ?
Leonid
а почему не кутреды?
Yevhen
я не понял, как в qthread заставить выполнять только один метод, без создания экземпляра класса
dµks
Qt Concurrent?
Leonid
да, в конкаррент есть такая возможность
dµks
Возможно, если поменять тип соединения что то получится
Leonid
тип соединения автоматом выбирается. Наверное нативные треды не может обработать, хз
Yevhen
Qt Concurrent?
посмотрю его повнимательней
Richard
Я не писал такого кода, но знакомый, пишуший декодер с таким кодом встречался. Там адовые оптимизации, каждый такт на счету) Вот в таких местах бывает, что без гоуту не обойтись
А, так оптимизированный код. Там часто творится дикая лапша, поэтому к ней вопросов нет. "Все в угоду производительности". Но в просто логике такое делать - ну нафиг. Тем более выше я привел буквально рядовой пример из того кода. Просто от того человека часто такой код, который перенести куда-то крайне трудно - активное использование глобальных переменных, дикие языковые конструкции, очень слабая декомпозиция. Очень доставляет при отладке это все еще.
Leonid
Ну да, тут явно дело в человеке, а не в гоуту) Гоуту просто инструмент, его можно применять правильно, можно не правильно. Как множественное наследование. Как лямбды.
Leonid
Да вообще как все)
Richard
Ну это понятно) просто с гоуту очень просто перегнуть планку на ровном месте.
Leonid
да, поалуй так
Leonid
но в плюсах надо постоянно быть на стреме)
Leonid
инструментов и способов их использовать неправильно много
Alleck
Я его использовал (goto) когда писал консольную программу на С для управления текстовыми файлами с простым содержимим. С ним было очень удобно делать текстовую менюшку, когда у тебя свич в свиче в свиче
Anonymous
Goto хорошо использовать в тех случаях когда надо преждевременно выйти из функции и освободить ресурсы