Size: a a a

2021 February 28

LA

Liber Azerate in supapro.cxx
Alex Green 𓆏
Я 3 тома прочитал гыг, чем лечиться теперь
Майерсом
источник

RM

Roy Mustang in supapro.cxx
Там короче система такая, каждый тип получает индекс при первом обращении к SystemIndex<Type>, затем за типом по харду привязывается индекс и этот индекс используется в векторе, индексы кэшируются в static переменной, чтоб постоянно не выполнять поиск
источник

RM

Roy Mustang in supapro.cxx
По сути ты просто создаешь свой класс и при RegiterSystem<Type> внутри is_detected проверяет, есть ли у тебя методы OnCreate(), OnUpdate(float), OnDestroy() и использует их если они у тебя созданы чтоб в дальнейшем они вызывались из Core. В итоге юзер получает чистый класс без необходимости наследоваться
источник

RM

Roy Mustang in supapro.cxx
Паттерн называется: Roy AntiOOP
источник

A

Alex Ф-ф-фэils!🌠︙... in supapro.cxx
а ведь можно было просто через концепт вынести это говно
источник

A

Alex Ф-ф-фэils!🌠︙... in supapro.cxx
ты изобрел статический полиморфизм, норм
источник

SH

Serhii Herashchenko in supapro.cxx
Так проверь сам
источник

DK

David Kravets in supapro.cxx
Alex Green 𓆏
Я 3 тома прочитал гыг, чем лечиться теперь
Чувак , ты это реально ?
источник

AG

Alex Green 𓆏 in supapro.cxx
David Kravets
Чувак , ты это реально ?
Ну по CS у него мне зашло. Все объясняет максимально тупо и подробно, как для гуманитариев (меня)
источник

AG

Alex Green 𓆏 in supapro.cxx
По плюсам не читал
источник

SH

Serhii Herashchenko in supapro.cxx
#include <iostream>
#include <sstream>

void* operator new(size_t n)
{
   std::cout << “Allocating “ << n << “ bytes;\n”;
   return malloc(n);
}

int main()
{
   std::stringstream ss;
   ss << “...”;
}
источник

SH

Serhii Herashchenko in supapro.cxx
Есть же онлайн компиляторы....
источник

V

Vladimir in supapro.cxx
Всем привет, пытался передать rvalue в конструктор родительской структурой и наткнулся на ошибки компиляции, до этого особо опыта с ravlue ref не имел
код:
struct AA {
 std::string path;
 AA(const std::string&& path) {
   this->path = path;
 }
};
struct BB : public AA{
 //но если обертнуть в std::move, то все заработает
 BB(const std::string&& path) : AA(path){//std::move(path)
 }
};
вопросы по нему:
1. Почему нельзя передать rvalue дальше?
2. Если обернуть в std::move, то заработает, правильно ли оборачивать в std::move?
3. Сейчас передачу rvalue's делаю как 'const Type& varname', это же правильный способ?
ссылка на ideone: https://ideone.com/PAE2c1
источник

LA

Liber Azerate in supapro.cxx
Vladimir
Всем привет, пытался передать rvalue в конструктор родительской структурой и наткнулся на ошибки компиляции, до этого особо опыта с ravlue ref не имел
код:
struct AA {
 std::string path;
 AA(const std::string&& path) {
   this->path = path;
 }
};
struct BB : public AA{
 //но если обертнуть в std::move, то все заработает
 BB(const std::string&& path) : AA(path){//std::move(path)
 }
};
вопросы по нему:
1. Почему нельзя передать rvalue дальше?
2. Если обернуть в std::move, то заработает, правильно ли оборачивать в std::move?
3. Сейчас передачу rvalue's делаю как 'const Type& varname', это же правильный способ?
ссылка на ideone: https://ideone.com/PAE2c1
Потому что параметр это lvalue, а не rvalue. Я думаю всё объяснил
3. Это не рвалью и быть не может
источник

LA

Liber Azerate in supapro.cxx
Vladimir
Всем привет, пытался передать rvalue в конструктор родительской структурой и наткнулся на ошибки компиляции, до этого особо опыта с ravlue ref не имел
код:
struct AA {
 std::string path;
 AA(const std::string&& path) {
   this->path = path;
 }
};
struct BB : public AA{
 //но если обертнуть в std::move, то все заработает
 BB(const std::string&& path) : AA(path){//std::move(path)
 }
};
вопросы по нему:
1. Почему нельзя передать rvalue дальше?
2. Если обернуть в std::move, то заработает, правильно ли оборачивать в std::move?
3. Сейчас передачу rvalue's делаю как 'const Type& varname', это же правильный способ?
ссылка на ideone: https://ideone.com/PAE2c1
У вас там const Type&&, а не const Type&. В любом случае, первое бессмысленно. Мы не можем переместить константное значение
источник

SS

Sergey Skvortsov in supapro.cxx
Нет
источник

LA

Liber Azerate in supapro.cxx
Динамик для полиморфных иерархий, и это для указателей или ссылок. Здесь простая срезка
источник

LA

Liber Azerate in supapro.cxx
Не обращай внимания. Это С++. Тут ты либо токсичный, либо без ног чаще всего всё вместе
источник

ДЖ

Дима Жигальов... in supapro.cxx
Привет, посоветуйте пожалуйста книгу по ООП на русском
источник

LA

Liber Azerate in supapro.cxx
Дима Жигальов
Привет, посоветуйте пожалуйста книгу по ООП на русском
Гради Буч
источник