@ProCxx

Страница 2394 из 2477
Alexen
01.10.2018
16:26:04
так ты дефолтный конструктор вызвал

PRoSToC0der
01.10.2018
16:27:00
Вроде как не приняли, но подробности я не смотрел
допуск произвольных (ну не совсем произвольных) типов в темплейтах это вроде как один из шагов к этому а так по идее могут и через constexpr! реализовать эту фичу

Igor
01.10.2018
16:31:22
Где найти формальное описание синтаксиса мейкфайлов, а-ля форма бэкуса-наура? Или они настолько тлен и ужас, что такое еще никто не придумал? Разрешаю насмехаться, только в про.линух не гоните

Egor
01.10.2018
16:32:34
оно точно есть? я в доке у них видел синтаксис, что вот тут пиши двоеточие, а вот тут табуляцию ставь

Google
Alexen
01.10.2018
16:32:47
есть

Egor
01.10.2018
16:32:48
на таком уровне, без формального

Alexen
01.10.2018
16:32:58
но там всё пичаль и грусть

и по форме там не будет

это же гну

короче там что-то из гцц

так как с оптимизацией оба слизались

там пессемизация

на такое обращать внимание себе дороже

когда у тебя х86 и регистров не ахти начинаются разные манипуляции

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

Igor
01.10.2018
16:40:10
Yarique
01.10.2018
16:41:01
Google
Alexen
01.10.2018
16:41:52
ну так в x86_64 тоже регистров не ахти в calling conversion, поэтому под это тоже идёт запил

итого рабочих регистров остаётся порядка 4 - 5 без тасования стека и люди выкручиваются как могут

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

Yarique
01.10.2018
16:44:04
окай, спасибо

Nikita
01.10.2018
17:26:13
никто не сталкивался с собственноручной имплементацией функции перевода времени в секундах с 1970 в строку даты? мож подкинете проверенный работающий алгоритм

Nikita
01.10.2018
17:27:19
Пожалуйста, во имя богов, не делай это руками.
проблема в том, что в проекте есть функция получения количества секунд, а возвращаемый тип несовместим с STL

Nikita
01.10.2018
17:27:56
ну там не std::time_t возвращается

ой, лучше либу найди ?
эх, я думал будет просто

Alexander
01.10.2018
17:28:15
Дмитрий
01.10.2018
17:28:30
Я в своё время детям делал презентацию почему не надо.

オレンジ
01.10.2018
17:29:03
Так, количество секунд же

Дмитрий
01.10.2018
17:29:19
Если очень хочется, есть POSIX localtime.

オレンジ
01.10.2018
17:29:23
Не с 1970?

Nikita
01.10.2018
17:29:49
А что за возвращаемый тип? Его нельзя перевести в time_t?
ну, формально говоря, реальный тип std::time_t неизвестен же

на практике оказалось, что типы отличаются знаковостью, но это только на MSVC, а хотелось бы переносимости

Дмитрий
01.10.2018
17:31:20
Эээ, мм, человек, ты просто явно кастуй, а не передавай в неизменном виде.

Google
Дмитрий
01.10.2018
17:31:37
И если problem 2038 не боишься, то норм.

Если боишься, проверяй, что оба типа 64 бита.

Nikita
01.10.2018
17:33:12
Если боишься, проверяй, что оба типа 64 бита.
ну собсна а что делать, если sizeof не равны? останавливать сборку неохота

Дмитрий
01.10.2018
17:33:45
Мост придётся писать, раз типы разные, а так норм.

Nikita
01.10.2018
17:35:13
type_a time_in_type_a = (type_a) time_in_type_b?
кстати, о time_t даже достоверно неизвестно, в каком формате хранится время, posix-time это или нет

Constantine
01.10.2018
17:36:03
проблема в том, что в проекте есть функция получения количества секунд, а возвращаемый тип несовместим с STL
а почему вы уверены, что возвращаемое значение в проекте имеет ту же семантику, что время в STL?

Nikita
01.10.2018
17:36:44
Constantine
01.10.2018
17:37:08
ну собсна я этого и не утверждал, что форматы совместимы
хм... тогда для начала давайте зададимся вопросом, что за число вам известно

Nikita
01.10.2018
17:37:51
хм... тогда для начала давайте зададимся вопросом, что за число вам известно
время с 1970 в секундах, это точно если немножко сузить задачу, то фактически надо вот такое число перевести в HTTP формат даты

Nikita
01.10.2018
17:38:47
время с 1970 в каких секундах?
Utc, если об этом речь

Дмитрий
01.10.2018
17:39:08
Тебе точность какая нужна?

Nikita
01.10.2018
17:39:28
до секунд

Constantine
01.10.2018
17:39:59
Utc, если об этом речь
Вы уверены, что это UTC? 30 июня 2012 года, 23:59:60 корректное время?

Nikita
01.10.2018
17:42:28
Вы уверены, что это UTC? 30 июня 2012 года, 23:59:60 корректное время?
мм, вроде не корректное :) не понимаю к чему вы клоните

Constantine
01.10.2018
17:42:38
Дмитрий
01.10.2018
17:42:40
Google
Nikita
01.10.2018
17:44:08
ууу всё короче нафиг нафиг нафиг, пойду ка я поюзаю STL, если начнут избивать на ревью, скажу чтоб сначала функцию перевода в строку завезли в библиотеку

всем пасиба

Admin
ERROR: S client not available

Дмитрий
01.10.2018
17:44:47
Мало того что корректное, так и не равное 1 июля 2012 00:00:00

Дмитрий
01.10.2018
17:46:34
Since C++20: system_clock measures Unix Time (i.e., time since 00:00:00 Coordinated Universal Time (UTC), Thursday, 1 January 1970, not counting leap seconds).

> not couning leap seconds

Удачной отладки)

Nikita
01.10.2018
17:50:32
кмк, смысл завозить в stl библиотеку для работы с сетью при такой разрухе в библиотеке времени сильно падает

:(

Nikita
01.10.2018
17:52:36
не совсем понял, про какую разруху речь
да банально, std::time_t с точки зрения стандарта это сферический конь в вакууме

Nikita
01.10.2018
17:53:28
а чего бы ты хотел?
зафиксировать underlying type и семантику значения

Alexander
01.10.2018
17:53:54
а зачем?

Nikita
01.10.2018
17:58:14
а зачем?
а вот захотел я некоторое time-delta к std::time_t добавить

Constantine
01.10.2018
17:59:30
зафиксировать underlying type и семантику значения
нужно фиксировать семантику операций а не значений

Nikita
01.10.2018
18:00:30
нужно фиксировать семантику операций а не значений
а, ну да, согласен хотя с этой точки зрения в c++11 chrono вроде бы должны быть подходящии функции

Alexander
01.10.2018
18:00:35
а вот захотел я некоторое time-delta к std::time_t добавить
не совсем понимаю, какие проблемы

получаешь time_point и прибавляешь к нему duration

Google
Nikita
01.10.2018
18:01:09
хорошо вам живётся с c++11 :)

Oleg
01.10.2018
18:01:31
хорошо вам живётся с c++11 :)
Угу. А нас с 03 страдать приходится

Alexander
01.10.2018
18:01:47
хорошо вам живётся с c++11 :)
ну это ваши проблемы, если в 2018 не можете на С++11 перейти

Yarique
01.10.2018
18:02:30
хорошо вам живётся с c++11 :)
это не хорошо, а уже крайне необходимо, в 2018 то году

Nikita
01.10.2018
18:03:46
да у нас софт типо супермегакроссплатформенный, не везде есть c++11, так что ядро должно быть c++03-compatible

Alexen
01.10.2018
18:04:38
на той на которой нет компилятора под этот стандарт?

Alexander
01.10.2018
18:04:51
на той на которой нет компилятора под этот стандарт?
спасибо, капитан. я про это и спрашиваю

а нельзя LLVM код в minimal-C перевести? :)
где-то видел недавно llvm—based транспилятор из С++17 в С++14\С++11

только вот он по идее работает только с языком, а не с либами :)

Constantine
01.10.2018
18:05:48
где-то видел недавно llvm—based транспилятор из С++17 в С++14\С++11
да я уверен что там не очень сложно, хотя я так и поленился прочитать полные доки LLVM

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