Ender
Вот в сипп как раз таки подобные фундаментальные проблемы я решал массивами указателей на воид например. А так же можно (но нужно ли) для всего чего тебе нужно делать обертки, которые будут наследовать один супер-класс, и делать массив элементов этого класса.
Ender
А вообще есть такая тема как union. Может быть она чуваку и нужна была.
Ender
В шараге наверняка учат ей пользоваться, меня в универе не учили.
Vladislav
Ну ок, boost::any? 😁
Тем более зачем новичку такие вещи)
Matwey
Тем более зачем новичку такие вещи)
Вдруг ему нужно запихнуть любой тип?
Evgeniy
Всем привет. Ребят, Вы писали extection для PHP? Где можно по этому процессу почитать? Спасибо!
Evgeniy
Ты не туда попал.
Просто они пишутся на C++
Эдвард
Что интересного есть почитать про плюсы кроме серии effective c++,effective stl и стандарта?
Ender
Сиплюсплюс за 24 часа
Berkus
Berkus
Всем привет. Ребят, Вы писали extection для PHP? Где можно по этому процессу почитать? Спасибо!
zend engine manual; сорцы любого другого экстеншена, желательно официального
Anonymous
Ищу алгоритм сжатия, обладающий относительной высокой степенью сжатия и быстрой скоростью распаковки. Время сжатия значения не имеет.
Anonymous
Мне надо чтоб скорость распаковки была выше, чем "в любом практически" =) Т.е. какой-нибудь специально заточенный под реактивную распаковку может есть
Matwey
А что за данные?
Anonymous
А что за данные?
И текст(css) и обычный бинарные данные(шрифты(woff, eot)), и картинки. В общем-то все данные от веб страницы Текста меньше всего будет, больше размера на картинки и шрифты приходится
Anonymous
Ещё Brotli вспомнился мне. Может он норм будет
Anonymous
в играх щас как раз частенько zstd/lz4 используют
Ок, спасибо. Там скорость распаковки думаю критична
Matwey
Писать в сеть будет
Anonymous
Можно писать в tmpfs, на ОЗУ
Anonymous
А результат уже на диск
Matwey
По 400-гигабитном ethernet-у
Matwey
@MasterZiv а если писать в /dev/null?
Anonymous
Эх, опять срач....
Крылатый
раСпаковку*
Matwey
А если сократить и ЗАПАКОВКУ, то будет еще больше!
Anonymous
в играх щас как раз частенько zstd/lz4 используют
Про brotli можешь что сказать? http://www.gstatic.com/b/brotlidocs/brotli-2015-09-22.pdf
Anonymous
Как я понимаю, brotli - прямой конкурент zstd
Anonymous
Хотя вроде zstd будет лучше для моих целей - надо тестить
Stanislav
для сжатия ресурсов игры zstd встречал только в играх на frostbite, а lz4 дофига кто использует
Anonymous
для сжатия ресурсов игры zstd встречал только в играх на frostbite, а lz4 дофига кто использует
Zstd can also offer stronger compression ratios at the cost of compression speed. Speed vs Compression trade-off is configurable by small increments. Decompression speed is preserved and remains roughly the same at all settings Идеально для меня
Anonymous
У lz4 скорость распаковки в 3 раза выше, судя по этому графику https://github.com/facebook/zstd
Anonymous
Mass Effect:Andromeda использует zstd также
Stanislav
Mass Effect:Andromeda использует zstd также
ну вот там фростбайт жже) как раз андромедовские ресурсы и ковырял
Stanislav
а если есть много денег) http://www.radgametools.com/images/oodle_typical_vbar.png
Крылатый
а если есть много денег) http://www.radgametools.com/images/oodle_typical_vbar.png
Так и знал, что они стали гнаться за скоростью распаковки, а не сжатия!
Крылатый
То-то игоры стали по 100 гигов весить.
Stanislav
Так и знал, что они стали гнаться за скоростью распаковки, а не сжатия!
дак вроде и скорость выше и степень сжатия, не? )
Крылатый
Да я ж шуткую)
Anonymous
Anonymous
угу
Max
а сколько денег надо? выглядят круто
Сайт прикольно выглядит, без выебонов
Anonymous
Anonymous
вот там точно без выебонов
Anonymous
да любой)
Berkus
А Вы писали?)
писал, потом понял что нахуй такие развлечения
Stanislav
lz4 видимо?
да уже насоветовали)
Berkus
struct Node<'a,T> { data: T, prev: Cell<Option<&'a Node<'a, T>>>, next: Cell<Option<&'a Node<'a, T>>> } если кому-то двухсвязные списки на плюсах казались сложными
Maxim
ребята, есть класс в c# dll, есть либа, которую делаю сам. как сконнектить мою либу и класс в dll. Класс Point точка. Как сделать, чтобы функция из моего класса с++ длл расстояние между точками, и класс поинт в c# либе подхватил мою функцию.
Maxim
double S = Math.Sqrt((P2.X - P1.X) * (P2.X - P1.X) + (P2.Y - P1.Y) * (P2.Y - P1.Y));
Maxim
через структуру не удается передать
Maxim
5 минут скину все
Maxim
С++ без CLI
Maxim
сейчас, дописываю вопрос
Anonymous
/stat@combot
Maxim
Есть класс в c# dll, я его никак не могу изменить, могу работать с ним из шарпа, в этом случае проблем нет и все проще намного. Но нужно из с++. Сам класс из c# dll: Public class Point { public double X; public double Y; public double Z; public Point(); public Point(Point Point); public Point(double X, double Y); public Point(double X, double Y, double Z); еще код, но он мне неинтересен } Используя функции extern "C" { TRADITIONALDLL_API double GetDistance(Location, Location); } проще, но у меня класс и получить результат я могу только так: double S = Math.Sqrt((P2.X - P1.X) * (P2.X - P1.X) + (P2.Y - P1.Y) * (P2.Y - P1.Y)); Вот статья, но тут используется структура https://docs.microsoft.com/en-us/cpp/dotnet/how-to-marshal-structures-using-pinvoke делая структуру в с++ dll, вызываю ее в шарпе так: struct TraditionalDLL { [DllImport("TraditionalDLL3.dll")] public static extern double dist(Point p1, Point p2); } потом double S = TraditionalDLL.dist(P1, P2); но это не работает, ошибка
usernameak
для целочисленных типов наверняка можно
там для целых и дробных разные реализации
B
можно применить частичные специализации
B
там для целых и дробных разные реализации
B
template <typename T> void f(T t); template<> f<double>(double t) { // реализация для double } ну и тд
kitsu
можно просто не указывать определение
B
+
Maxim
покажи что экспортуирует dll на плюсах
в том и вопрос, делаю экспорт строуктуры. Я не точно сформулировал вопрос, одн должен звучать так: что нужно экспортировать, чтобы добавить метод к существующему в шарпе классу. Нужно переписать класс на плюсы? и сделать уже там необходимый метод?
Square
Maxim
никак? )
Maxim
шарп читается просто, думал таким образом защитить