
Alexander
17.09.2017
13:40:52
Если в Страуструпе что-то непонятно, то всегда есть гугл.

asterisk
17.09.2017
13:40:53
майерс вроде разьяснял про фигурные и круглые.. не помню

Google

Alexey
17.09.2017
13:42:40
Майерс нормально пишет, вполне все понятно

asterisk
17.09.2017
13:44:07
согласен

Matwey
17.09.2017
13:44:34
/me ждет пока кто-нибудь скажет, что книжки не нужны и можно по исходникам компилятора разобраться в языке

FailsBot
17.09.2017
13:44:35
Matwey ждет пока кто-нибудь скажет, что книжки не нужны и можно по исходникам компилятора разобраться в языке

Vasiliy
17.09.2017
13:45:35
На асемблере надо кодить какой ещё такой цпп

Vania
17.09.2017
13:46:50
В холивар давайте, это уже в срач перерастает.

asterisk
17.09.2017
13:46:57
вот бы был objective-asm

Alex Фэils?︙
17.09.2017
13:51:08

FailsBot
17.09.2017
15:26:56

Berkus
17.09.2017
15:27:00
/warn flood

Group Butler [beta]
17.09.2017
15:27:00
jlinx has been warned (1/5)

Абдухаким
18.09.2017
05:40:09
hello guys

Google

Абдухаким
18.09.2017
05:40:28
I'm working on boost.asio
making a simple echo server

Alexey
18.09.2017
05:42:15
Аласлям алейкум

Абдухаким
18.09.2017
05:42:56
how can I send the size of a message to a client so that the client can allocate enough memory for the coming message
please help
???

Александр
18.09.2017
05:44:59

Alexey
18.09.2017
05:45:02
В случае эхо сервера - хз.
Возможно, стоит в начале слать размер сообщения, а потом само сообщение
В случае http-сервера можешь указывать размер сообщения в заголовке

Абдухаким
18.09.2017
05:46:22
так и делал но не получается
я знаю как ето делать на Winsock2 но как ето делать на boost::asio используя boost::asio::buffer
heeeelp

Александр
18.09.2017
05:53:33
heeeelp
Посылаешь 4 байта - int32_t - длину сообщения
А следом само сообщение

Friedrich
18.09.2017
05:56:56
Друзья, флуд оставьте в другом чате, пожалуйста. Тут по делу.

Абдухаким
18.09.2017
06:05:52

Александр
18.09.2017
06:06:13

Абдухаким
18.09.2017
06:07:29
понимаешь я погуглил на нет результата
как найти етот канал на английском

Google

Абдухаким
18.09.2017
06:10:52
ведь есть же
не могу найти

Berkus
18.09.2017
06:12:45

Абдухаким
18.09.2017
06:13:09
ok

Berkus
18.09.2017
06:13:19
пока что совершенно непонятно в чем там может быть сложность

Абдухаким
18.09.2017
06:13:58
int32_t size = msg.size();
send(socket, (char*)& size, sizeof(int32_t), NULL);
send(socket, msg.c_str(), size, NULL);

Berkus
18.09.2017
06:17:05
ну вон же ты размер передаешь, читай его и вперед
https://stackoverflow.com/a/15069733/6804187 вот есть пара ссылок куда смотреть

Абдухаким
18.09.2017
06:20:10

Admin
ERROR: S client not available

Berkus
18.09.2017
06:22:04
boost::asio::async_read_some(boost::asio::buffer(reinterpret_cast<char*>(&size), sizeof(int32_t)) точно так же
просто конструируешь буфер из инта и читаешь в него, не забывай про endianess

Абдухаким
18.09.2017
06:41:28

thegrif
18.09.2017
11:42:28
Коллеги, хелп: нужно замерить время работы функции в мс. В Java изи делается, а вот в плюсах не могу совладать с получением времени

Alex Фэils?︙
18.09.2017
11:42:52
самое простое и портабельное в C++98 - clock()
в новом стандарте (C++11) есть high_resoluton_clock

Matwey
18.09.2017
11:43:08
std::chrono

thegrif
18.09.2017
11:43:35
Clock у меня выдаёт одинаковые значения, хотя функция - метод Гаусса

Google

Alex Фэils?︙
18.09.2017
11:43:43
а на платформах сильно depends, я мини-заметку писал на эту хурму

thegrif
18.09.2017
11:44:29
Около 1к

Stanislav
18.09.2017
11:44:45
https://solarianprogrammer.com/2012/10/14/cpp-11-timing-code-performance/
как раз получается что хайрезолюшен на студии 2012 под вин7 не отличается от других

thegrif
18.09.2017
11:45:49
Станислав, спасибо, попробую

Ilia
18.09.2017
11:46:13
Примажусь к чужой славе:
#include <iostream>
#include <string>
#include <cmath>
#include <vector>
#include <windows.h>
#include <ppl.h> // parallel stl
#include <chrono>
#include <iostream>
#include <vector>
#include <type_traits>
int main()
{
double a[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
std::cout << "a size in elements: " << std::extent<decltype(a), 0>::value << std::endl;
std::vector<int> v(1'000'000, 0);
std::chrono::time_point<std::chrono::system_clock> start, end;
start = std::chrono::system_clock::now();
concurrency::parallel_transform(std::begin(v), std::end(v), std::begin(v),
[](int i)
{
return i + 12;
});
end = std::chrono::system_clock::now();
std::cout << std::chrono::duration_cast<std::chrono::milliseconds>(end - start).count();
return 0;
}

thegrif
18.09.2017
11:46:24
Просто я сегодня на паре реально удивился, как это геморно в плюсах получить время

Ilia
18.09.2017
11:46:55
Примажусь к чужой славе:
#include <iostream>
#include <string>
#include <cmath>
#include <vector>
#include <windows.h>
#include <ppl.h> // parallel stl
#include <chrono>
#include <iostream>
#include <vector>
#include <type_traits>
int main()
{
double a[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
std::cout << "a size in elements: " << std::extent<decltype(a), 0>::value << std::endl;
std::vector<int> v(1'000'000, 0);
std::chrono::time_point<std::chrono::system_clock> start, end;
start = std::chrono::system_clock::now();
concurrency::parallel_transform(std::begin(v), std::end(v), std::begin(v),
[](int i)
{
return i + 12;
});
end = std::chrono::system_clock::now();
std::cout << std::chrono::duration_cast<std::chrono::milliseconds>(end - start).count();
return 0;
}
В примере тут есть замер.
Не так и суперсложно...

Anatoly
18.09.2017
11:48:00
анонс митапа в СПб: https://www.meetup.com/St-Petersburg-CPP-User-Group/events/243451783/ #meetup #cpp #spb

thegrif
18.09.2017
11:48:21
Да ладно, вот из Java: System.currentTimeMillis()
И всё, вернёт текущее время в мс в любом месте программы

Stanislav
18.09.2017
11:49:45

Alex Фэils?︙
18.09.2017
11:50:36
static_assert(std::steady_clock::is_steady(), "Your steady clock is not so steady");