@ProCxx

Страница 2275 из 2477
Alexandr
12.08.2018
12:43:01
@y6htb0cbk1or спасибо

Vitaly
12.08.2018
13:08:05
Прошу прекратить оффтоп.

PRoSToC0der
12.08.2018
14:02:59
а по замыслу modules ts можно ли будет не экспортить некоторые публичные поля класса? типа публичные поля, которые видны только внутри модуля

Google
Egor
12.08.2018
16:24:20
A::A(const B &b) try : b(b) { // some code } catch (...) { // throw; // automatic? } автоматический rethrow тут по стандарту происходит или надо явно указывать throw;?

Ilia
12.08.2018
16:24:42
а по замыслу modules ts можно ли будет не экспортить некоторые публичные поля класса? типа публичные поля, которые видны только внутри модуля
Я не знаю, но думаю там не будет ничего, что меняло бы логику работы программы, семантику объявлений. Только то, что должно помогать компиляции и сборке программы.

Да, internal было бы удобно)
А сейчас нет его?

Egor
12.08.2018
16:32:04
?

Anatoly
12.08.2018
16:33:19
А где тут чего? Вообще код невалидный
Обработка исключений в списке инициализации. Не встречал?

Alexandr
12.08.2018
16:34:02
Я тоже первый раз

Будемс знать

Egor
12.08.2018
16:37:06
ага, вижу, спс

Ilia
12.08.2018
16:38:16
Обработка исключений в списке инициализации. Не встречал?
Ну там код не полный, совсем не факт, что так.

Google
Ilia
12.08.2018
16:39:47
Ну я вот не распарсил

Anatoly
12.08.2018
16:59:36
Ну я вот не распарсил
А так? struct S { std::string m; S(const std::string& arg) try : m(arg, 100) { std::cout << "constructed, mn = " << m << '\n'; } catch(const std::exception& e) { std::cerr << "arg=" << arg << " failed: " << e.what() << '\n'; } // implicit throw; here };

Побитый
12.08.2018
17:16:28
Dmitry
12.08.2018
17:41:13
А есть какие нибудь инструменты для оценки цикломатической сложности функций?

Nikita
12.08.2018
19:37:11
Добрый вечер. Я часто пишу if (!v.empty()) v.pop_back(); и грущу потому что набрал много символов и не понимаю почему это не можно сократить. Обьясните, пожалуйста, почему более логично когда pop_back на пустом векторе бросает исключение, а не просто ничего не делает? Хотелось бы или чтобы он ничего не делал, или чтобы был метод std::vector::pop_back_or_none. Это у меня одного такие странные хотелки или кто-то еще так думает?

Matwey
12.08.2018
19:38:55
Я бы сказал что логическая ошибка была допущена раньше, если появилась необходимость делать pop на пустом списке

Nikita
12.08.2018
19:39:32
#define p(v) if (!v.empty()) v.pop_back();
Спасибо за олимпиадный стиль, но я не хочу экономить символы за счет читабельности кода

Nikita
12.08.2018
19:43:43
Я бы сказал что логическая ошибка была допущена раньше, если появилась необходимость делать pop на пустом списке
Резонное замечание, но это зависит от того как определить логику: если необходимо удалить последений элемент а его нет то можно сказать что операция неприменима, а можно сказать что ничего не нужно делать

Ну такой интерфейс, придумали так. Если тебе надо что-то такое часто, напиши просто маленькую функцию, и используй
Тут скорее самый важный вопрос последний, о том насколько часто люди с таким сталкиваются и как к этому относятся

/dev
12.08.2018
19:44:31
Kirill
12.08.2018
19:44:51
vector::clear()?

Ilia
12.08.2018
19:45:22
Тут скорее самый важный вопрос последний, о том насколько часто люди с таким сталкиваются и как к этому относятся
Видимо, реле, чем ты. Он операции допустимы и логичны, но надо же было из двух выбрать один из способов...

Nikita
12.08.2018
19:47:30
template<class T> void human_readable_pop(std::vector<T>& vec) { if (!vec.empty()) { vec.pop(); } }
Так читабельно, но опять же, если много кто будет так писать, то не лучше ли занести это в стандартную библиотеку под именем pop_back_or_none?

тут логика и отличие от pop_back понятно, _or_none явно говорит что возможно ничего не будет удалено

/dev
12.08.2018
19:48:27
Google
Aidar
12.08.2018
19:49:17
Сделай внешнюю функцию и все

Kirill
12.08.2018
19:50:17
> почему более логично когда pop_back на пустом векторе бросает исключение FYI: он бросает UB, а не исключение

Nikita
12.08.2018
19:51:29
Сделай внешнюю функцию и все
Так и сделаю, опять же повторю что главный вопрос — о том насколько этот эпсилон маленький

/dev
12.08.2018
19:53:14
Так и сделаю, опять же повторю что главный вопрос — о том насколько этот эпсилон маленький
тезис 1. это сахар и результат может быть получен комбинацией двух существующих методов. не приносит новую функциональность

Nikita
12.08.2018
19:58:49
тезис 1. это сахар и результат может быть получен комбинацией двух существующих методов. не приносит новую функциональность
Сахара и так много, он есть потому что он "вкусный" (улучшает жизнь, пускай и чуть-чуть)

Ilia
12.08.2018
20:04:16
Сахара и так много, он есть потому что он "вкусный" (улучшает жизнь, пускай и чуть-чуть)
Ну кстати же ты должен был бы по идее писать больше, if( !v.empty() ) { val = v.back(); v.pop_back(); }

Nikita
12.08.2018
20:08:43
Там жизнь сложилась так что в результате определенных манипуляций я или обрабытываю весь вектор и он пуст или последний элемент становится мне не нужен

Хотя наверное в такой формулировке я действительно хочу нелогичного, обрабатывать логически разные случаи одним способом

Sevak
12.08.2018
20:47:37
Кто может скинуть хорошее резюме С++ инженера

Alexander
12.08.2018
20:48:45
/dev
12.08.2018
20:53:32
Alexander
12.08.2018
20:57:55
C++ же, а не C
языки почти одинаковые. Если на Си умеет писать, то и на крестах умеет

Alexander
12.08.2018
20:59:52
а я вот не сомневаюсь

Линус точно знает преимущества крестов и умеет грамотно ими пользоваться

Alexander
12.08.2018
21:02:11
разве я неправ?

Google
Sevak
12.08.2018
21:04:46
разве я неправ?
Можешь просто прислать мне резюме нормального С++ инженера?

Alexander
12.08.2018
21:05:12
я же скинул выше

https://vittorioromeo.info/

Sevak
12.08.2018
21:15:51
я же скинул выше
А где тут резюме?

Alexander
12.08.2018
21:19:21
А где тут резюме?
страница linkedin == cv

Крис
12.08.2018
21:57:19
Alexander
12.08.2018
21:58:28
cv != resume
вау, спасибо! но здесь монопенисуально

Alexander
12.08.2018
22:00:17
потому что раз человек такое спрагивает, то ему пофиг

Nikita
13.08.2018
07:04:50
есть чатик C++ Windows разработки?

Nikita
13.08.2018
07:05:03
:(

Alexander
13.08.2018
07:05:24
Так как это часть C++, то можно и тут спросить. у нас тут вроде хватает людей, зщнакомых с кресторазработкой под винду

Nikita
13.08.2018
07:09:37
Ну ок, просто вопрос очень специфичный Меня интересует lifecycle объекта CHttpModule, который порождается в IHttpModuleFactory в методе GetHttpModule. Везде пишут мол не парься, после обработки запроса сервер как то сам уничтожит этот объект. При этом я могу придумать как минимум три способа отдать CHttpModule в методе GetHttpModule : выделить в куче, отдать ссылку на поле класса и выделить память с помощью аллокатора, который приходит как параметр GetHttpModule. И как это сервер поймёт, как правильно очистить объект?

Andrey
13.08.2018
07:15:20
Здравствуйте, подскажите, есть ли в каких-нибудь библиотеках готовая реализация виртуальной памяти. Например, есть класс виртуальной памяти, которому я могу отдать сколь угодно много отдельный кусков памяти (указатель и размер), а этот класс бы реализовывал мне непрерывную память с доступом как к указателю, проще говоря, имел все те же операторы, что у обычного указателя.

Andrey
13.08.2018
07:21:27
это IIS
Что такое IIS?

Google
Alexander
13.08.2018
07:24:31
это IIS
IIS это который сервер?

если да, то тогда я не совсем понимаю, причём он тутздесь

Alexander
13.08.2018
07:26:13
Да, речь идёт про создание модулей
не-не, так я же не тебе отвечаю, а парню про абстракции над памятью

Friedrich
13.08.2018
07:26:13
Я не понял, как вы с виртуальной памяти на модули IIS переключились.

Alexander
13.08.2018
07:26:39
@crackedmind просто мискликнул

Stanislav
13.08.2018
07:27:02
То, что написано в примерах MSDN - гарантированный memory leak
не забывай что там все обмазано COM, а там используется reference count

Nik
13.08.2018
07:28:08
не забывай что там все обмазано COM, а там используется reference count
Как, прости, COM может узнать как и где ты выделил память?

Nikita
13.08.2018
07:28:33
не забывай что там все обмазано COM, а там используется reference count
Я с COM не работал, но насколько знаю, там нужно наследоваться от специального класса со счётчиком ссылок, а в интерфейсах модуля никакого наследования нет

Страница 2275 из 2477