
Артем
23.09.2018
17:35:52
созданный CMake лог

Побитый
23.09.2018
17:37:52

Артем
23.09.2018
17:38:29

Alex Фэils?︙
23.09.2018
17:39:50
Да, ща в общем, залез на мак, качаются исходники. надо скомпилировать в итоге эту либу и либо рядом положить, либо во фреймворки

Google

Igor
23.09.2018
17:40:01
а ты указывал всякие там cmake -DBUILD_SHARED_LIBS=ON . ?
как написано в мануале

Артем
23.09.2018
17:43:27

Igor
23.09.2018
17:43:43
покажи тогда как ты компилишь проект
может ты рили не линканул тупо
не либу, а свою программку

Артем
23.09.2018
17:44:26
да у меня программа из одной строки
glfwInit()

Fedya
23.09.2018
17:46:21
ее реализации и не видно. ты добавил либу в зависимости в xcode?

Артем
23.09.2018
17:47:34

Fedya
23.09.2018
17:47:47
в смысле через #include?
With Xcode on OS X
If you are using the dynamic library version of GLFW, simply add it to the project dependencies.

Igor
23.09.2018
17:48:09
Ты же в курсе, что либы нужно линковать?

Google

Igor
23.09.2018
17:48:30
Научиться работать с командной строкой компилятора и всё такое?

Артем
23.09.2018
17:49:22
да я на плюсах неделю

Igor
23.09.2018
17:50:46
Почитай как писать make файлы, компилить либки и всё такое
тогда у тебя отпадут все вопросы
Видимо ты действительно не линканул либу
Кароче, пойми процесс сборки

Артем
23.09.2018
17:51:31
читал, линковал на другом IDE, на XCode пишут, что не надо

Igor
23.09.2018
17:51:42
ну да
это же другая вселенная
прям параллельная
Там и баб страшных нету

Fedya
23.09.2018
17:52:38

Igor
23.09.2018
17:54:02
в С++ только может быть в 20-м стандарте уберут все незабываемые прекрасные моменты с линковкой либок

Ilia
23.09.2018
18:11:53

Alexander
23.09.2018
18:14:02
так, короче. Я разузнал немного. В С++20 скорее всего попадёт Executors Lite пропозал. Там довольно много вещей вырежут, но это чтобы успеть. Какие именно вещи вырежут - надо читать пропозал.
По поводу модулей пока что новостей нет - ещё не выловил людей

Xessao
23.09.2018
18:21:09

Igor
23.09.2018
18:21:45
а что там объяснять
просто ещё в 13-м году внесли предложение и бурно обсуждали изменить механизм библиотек
добавить ключевое слово import вместо директивы #include и всё в таком духе

/dev
23.09.2018
18:25:10

Google

Yarique
23.09.2018
18:46:30
https://pastebin.com/sJwc9WZy
C++17 код
Как захватывается callback<MESSAGE_SIZE> ? По значению захватывается функция?
[
fn=callback<MESSAGE_SIZE>,
s=std::move(s)
](auto &&ec, auto &&bt)
{
fn(
std::forward<decltype(ec)>(ec),
std::forward<decltype(bt)>(bt),
std::move(s)
);
}
захватывается ссылка на функцию, так ?
fn(
std::forward<decltype(ec)>(ec),
std::forward<decltype(bt)>(bt),
std::move(s)
);
unspecified behaviour? тогда получается, что надо писать
(*fn)(
std::forward<decltype(ec)>(ec),
std::forward<decltype(bt)>(bt),
std::move(s)
);
?
указатель на функцию надо разыминовывать при вызове или он по стандарту неявно разыменуется при вызове?

Igor
23.09.2018
19:05:10

Roman
23.09.2018
19:10:08

Yarique
23.09.2018
19:10:54
получается operator() может принимать как ссылку на функцию так и указатель на функцию?

Roman
23.09.2018
19:14:40
operator()()
Это к функторам
Или ты имеешь ввиду вызов функтора через указатель на объект?

Yarique
23.09.2018
19:16:09
я имею в виду вызов функции через указатель на функцию

Alexander
23.09.2018
19:16:18

Yarique
23.09.2018
19:16:35
сущность вроде void (&f)(int)

Roman
23.09.2018
19:16:56

Yarique
23.09.2018
19:18:03

Roman
23.09.2018
19:19:23
f это что?

Yarique
23.09.2018
19:20:18
f это что?
f - имя указателя на функции. void (*f)(int) написано же

Roman
23.09.2018
19:21:12
Вызов будет
int intv = 4;
f(intv);

Yarique
23.09.2018
19:23:10
Вызов будет
int intv = 4;
f(intv);
спасибо, просто, в памяти всплыл код где разыменовывают указатель на функцию при вызове, а ля (*f)(param);
интересно зачем так делают ? ?

Roman
23.09.2018
19:25:40
Это может быть указатель на указатель на функцию

Yarique
23.09.2018
19:26:16

Google

Anton
23.09.2018
19:36:37
т.е. всё равно разыменовывать или нет
не уверен, что правильно вспомнил )

Насибуллин
23.09.2018
19:48:00
Я тоже видел где разыменовывают, но это чушь
Со времен си можно было делать так:
MyFunc = &DeclaredFunc;
MyFunc(args)

Ilia
23.09.2018
20:26:45

Igor
23.09.2018
20:27:12
А три точки - это очень страшно?

Ilia
23.09.2018
20:28:19

Igor
23.09.2018
20:31:01
ну можно применить к объекту с описанным operator()
или это перегрузкой даже считается

Ilia
23.09.2018
20:31:28
Считается

Anton
23.09.2018
20:31:42
а мне кажется это не перегрузка
что именно перегружается?

Igor
23.09.2018
20:31:52
оператор

Anton
23.09.2018
20:31:59
у объекта нет дефолтного operator()

Igor
23.09.2018
20:32:04
думаю, перегрузка

Anton
23.09.2018
20:32:06
но можно определить

Ilia
23.09.2018
20:32:08
operator ()

Igor
23.09.2018
20:32:10
ну у объекта и « нету

Google

Igor
23.09.2018
20:32:14
да
к тому же пишется operator()
100% перегрузка

Anton
23.09.2018
20:41:26
а ну типа оператор всегда можно только перегрузить, потому что это оператор
нельзя определить новый оператор в C++

Yarique
23.09.2018
20:43:57

Anton
23.09.2018
20:44:41
почему? )
это же всё уже стандартные операторы

Yarique
23.09.2018
20:45:11

Anton
23.09.2018
20:45:45
так а я про другое ведь
что нельзя определить новый оператор
из того что оператор можно всегда только перегрузить не следует что любой оператор можно перегрузить

Yarique
23.09.2018
20:46:26

Anton
23.09.2018
20:46:55
какой-то оператор
не любой!
=)

Ilia
23.09.2018
20:59:58

Firstname
23.09.2018
21:55:46
Будет кто нибудь на Secr 2018?)