Size: a a a

2021 February 25

Е

Егор in supapro.cxx
или изменить поведение
источник

Е

Егор in supapro.cxx
ну и переменное кол-во параметров
источник

NM

Nastya Medveda in supapro.cxx
ин-стан-ци-ро-ва-ние.. А как это будет по-английски?
источник

Е

Егор in supapro.cxx
template instantiation
источник

MM

Marsel Marsel in supapro.cxx
как понимать выражение " *(RuleUseCost*)this =  "   ???
источник

MM

Marsel Marsel in supapro.cxx
указатель в скобке и снаружи или что то тут разыменовывается
источник

NM

Nastya Medveda in supapro.cxx
Егор
template instantiation
спасибо. Это, видимо одна из частей С++ кода, куда лучше не просто не лезть, но и попытки понять как это работает тоже будут бесплодны.
источник

GF

Georgy Firsov in supapro.cxx
Marsel Marsel
как понимать выражение " *(RuleUseCost*)this =  "   ???
Указатель this кастится к типу RuleUseCost*, а затем разыменовывается
Черная магия для каста *this к типу RuleUseCost
источник

MM

Marsel Marsel in supapro.cxx
ааа вон оно что, это насильственное приведение к типу, к другому указателю
источник

D

Dmitriy in supapro.cxx
Constantine Drozdov
любой вызов atexit можно заменить деструктором статической переменной
Разве не atexit-подобный механизм используется CRT  для вызовов деструкторов static переменных?)
источник

Е

Егор in supapro.cxx
Nastya Medveda
спасибо. Это, видимо одна из частей С++ кода, куда лучше не просто не лезть, но и попытки понять как это работает тоже будут бесплодны.
ну можно с литературы начать, Шаблоны С++ там
источник

MM

Marsel Marsel in supapro.cxx
Georgy Firsov
Указатель this кастится к типу RuleUseCost*, а затем разыменовывается
Черная магия для каста *this к типу RuleUseCost
спасибо
источник

MM

Marsel Marsel in supapro.cxx
а для этого нужно чтобы один из них был наследственный тип?
источник

NM

Nastya Medveda in supapro.cxx
```MyClass<auto> o{123};```
auto is not allowed in template argument
С++ недостаточно умный чтоб самому понять тип int 🙂
источник

GF

Georgy Firsov in supapro.cxx
Marsel Marsel
а для этого нужно чтобы один из них был наследственный тип?
Ну так как такие касты зачастую черная магия, то вот вообще не обязательно.
*(float*)this - валидный код. Но что из этого выйдет - вопрос открытый) Зачастую ничего хорошего
источник

D

Dmitriy in supapro.cxx
Nastya Medveda
```MyClass<auto> o{123};```
auto is not allowed in template argument
С++ недостаточно умный чтоб самому понять тип int 🙂
Проблема точно не в авторе кода?)
источник

SF

S F in supapro.cxx
Скажите пожалуйста, в g++ уже реализованы модули? Где можно посмотреть
источник

NM

Nastya Medveda in supapro.cxx
Dmitriy
Проблема точно не в авторе кода?)
Нет. Некоторые языки, созданные уже  в этом тысячелетии умеют делать то же самое и без шаблонов.
источник

CD

Constantine Drozdov in supapro.cxx
Nastya Medveda
Нет. Некоторые языки, созданные уже  в этом тысячелетии умеют делать то же самое и без шаблонов.
std::pair p{ 123, 12.0 }
источник

GF

Georgy Firsov in supapro.cxx
Nastya Medveda
```MyClass<auto> o{123};```
auto is not allowed in template argument
С++ недостаточно умный чтоб самому понять тип int 🙂
С С++17 есть class template argument deduction.
MyClass o{123}; будет работать, если у MyClass есть конструктор, принимающий аргумент типа шаблонного параметра
источник