Anton
Блин, не туда написал.
Anton
Уже
Berkus
Александр
Александр
по-моему бан был за спор с тобой
Александр
ну не за сам спор, а причина бана бурно обсуждалась перед баном
Дим
Max
Дим
Berkus
Max
Berkus
Дык уже
Anatoly
Вот ведь, человек под баном, а он даже ничего не почувствовал.
Олександр
Вот это да, я что-то упустил... Спасибо за разбан.
Dmitrii
IRC -voice
MT Radio
если я хочу сюда кусок кода кинуть, как его правильно оформить, чтобы не "вырвиглаз" получилось?
Anonymous
hastebin.com
Stanislav
MT Radio
если даже для иллюстрации вопроса? Т.е. по минимому
Alexander "SonnySlave"
Я думал Фокс после бомбёжки на плюсы уже на Раст убежал))
Anonymous
Ех, вот бы взять самые сливки от C++ и запилить свой ЯП, да вот только ни времени, ни знаний, ни материальных ресурсов.
Anonymous
Править спеку на 2k страниц, которая запиленна с упором в поддержку легаси-кода... Такое себе удовольствие.
MT Radio
Столкнулся с такой штукой:
1) есть структура, например: struct A { int a_; double b_; }
2) через new / malloc я выделяю 100 байт в char* mem.
3) создаю экземпляр этой структуры и заполняю ее какими-то значениями
4) копирую эту структуру по указателю (mem + 2), т.е. с небольшим сдвигом, но места хватает.
5) создаю указатель на нее A* myptr = (A*)(mem+2);
6) пытаюсь считать myptr->a_ — получаю bus error из-за data alignment problem (на unix, на винде и линухе всё компилится и работает ок).
7) workaround: создавать где-то A a2; и копировать сначала туда.
Но если у меня такая память в гиг размером, и структур в сотни тысяч, то грустно все время копировать.
Есть ли более красивый workaround?
Anonymous
Anonymous
Я его, правда, опять потерял.
vladislav
Anonymous
прям интересно стало
[Disclaimer: Массивный буггурт, не воспринимать всеръёз]
https://t.me/cpptogether/115880
Square
Anonymous
Если у меня будет возможность для этого 'изи', то я скорее выкачу свой ЯП уровня Pony.
Anonymous
Ах.
Anonymous
Что-то странное.
Square
И пилят изи
Anonymous
А оно быстрое?
Square
Спроси там. Вроде до
Square
Оно ж конпелируемое
Square
Ну точнее одна часть
vladislav
Alexander "SonnySlave"
Alexander "SonnySlave"
vladislav
знатный бугурт, спасибо
Richard
Anonymous
Народ, кто решает задачи с acmp.ru? Можете подсказать некоторые задачи
Deleted Account
Alexander "SonnySlave"
@foxcpp а куда время твоё девается?)
Alexander "SonnySlave"
что его так не хватает тебе?)
vladislav
какова рода концах
Бизнесу нужна совместимость и новые фичи, программистам хочется новых фич и как можно больше, но не очень нужна совместимость (если речь идёт о пет проджектах и профессиональном росте)
Alexander "SonnySlave"
ну ясно 😊
Deleted Account
Anonymous
У меня создаётся впечатление, если я всё-таки потрачу всё, что остаётся на что-то гигатнское вроде ЯП, то у меня уйдёт на это много-много лет.
Alexander "SonnySlave"
тогда придётся жрать кактус 😊
Alexander "SonnySlave"
да не, лучше в алгоритмы
Denis
vladislav
Denis
И половина из них живут вместе с JVM.
vladislav
rust тот же
Denis
scala?
Anonymous
Ну бля, ну закопайте. У них хорошо получилась только переносимость.
kitsu
Anonymous
Буду работать кассиром в пяторочке, нахер этот IT.
Denis
Лучше JVM, чем js движки разных сортов поддержки js.
Anonymous
Лучше нативный код, который переносится перекомпиляцией.
Крылатый
Отставить оффтоп.
Крылатый
@root_the предложения о работе через @AlexFails
Anonymous
Да какая это работа, так, помощь)
Для понимающих там дел на 5 минут
Крылатый
Шабашки — тоже работа.
Anonymous
С шарпом знаком, а вот плюсы тёмный лес
Igor
https://godbolt.org/g/orXVZd - как сконвертировать структуру в tuple в compile-time с C++17
Andrei
Мать...
Andrei
magic_get же это вроде из коробки умеет, не?
Max
Какие есть способы защитить обращение к B::_ptr в таких и схожих случаях?
#include <memory>
#include <iostream>
class A {
public:
A() { std::cout << "A::ctor" << std::endl; }
~A() { std::cout << "A::dtor" << std::endl; }
void foo() { std::cout << "A::foo" << std::endl; }
};
class B {
public:
B(const std::shared_ptr<A>& ptr) : _ptr(ptr) { }
void bar() { _ptr->foo(); }
private:
std::shared_ptr<A> _ptr;
};
int main() {
auto a = std::make_shared<A>();
auto b = std::make_shared<B>(a);
b->bar(); // OK
delete a.get();
b->bar(); // Fucked...
}
Крылатый
Anonymous