Size: a a a

2021 February 27

LA

Liber Azerate in supapro.cxx
Rock hero
Уважаемые помогите, я создаю в хедере  шаблонный класс  с предварительным объявлением конструктора и деструктора  реализацию их решил сделать в  .cpp  и соответственно для этого добавил шаблоны и к определениям оных при попытке компиляции  вылазит LNK2019   если удалить шаблонность из класса или сделать все в хедере это конечно решит проблему  но вопрос можно ли как то починить все оставит определение в соседнем файле а не там где объявлен класс
С шаблонами надо всё в хедерах, остальное какие-то извращения, в целом. Если нет какой-то специфичной нужды, пиши всё в хедере
источник

SS

Sergey Sobolev in supapro.cxx
Nastya Medveda
Как правило книги появляются раньше имплементации стандартов  в софте/железе  и пишутся они теми же людьми, которые эти стандарты и разрабатывают.
зачем вам с++ нужен? Складывается впечатление, что у вас цель не понять, откуда начать изучать, а вылить свою ненависть к языку в этом чате, не успев разобраться, зачем он нужен
источник

D

Dmitriy in supapro.cxx
Denis Paukaev
Никто в своем уме не использует uptr<void>
Да ладно
источник

D

Dmitriy in supapro.cxx
Категорически не согласен :)
источник

LA

Liber Azerate in supapro.cxx
Sergey Sobolev
зачем вам с++ нужен? Складывается впечатление, что у вас цель не понять, откуда начать изучать, а вылить свою ненависть к языку в этом чате, не успев разобраться, зачем он нужен
+
источник

MK

Mikhail Kalugin in supapro.cxx
Dmitriy
Категорически не согласен :)
Да зачем вам эта штука вообще? В C++ есть тысяча и один безопасный способ обойтись без неё.
источник

Е

Егор in supapro.cxx
Mikhail Kalugin
Да зачем вам эта штука вообще? В C++ есть тысяча и один безопасный способ обойтись без неё.
отдать в сишные апи ¯\_(ツ)_/¯
источник

D

Dmitriy in supapro.cxx
Mikhail Kalugin
Да зачем вам эта штука вообще? В C++ есть тысяча и один безопасный способ обойтись без неё.
WinAPI от меня никуда не денется, а ворочать сырые дескрипторы в коде на C++17 я не намерен
источник

MK

Mikhail Kalugin in supapro.cxx
Егор
отдать в сишные апи ¯\_(ツ)_/¯
Ну, не unique_ptr же, он для этого не предназначен...
источник

D

Dmitriy in supapro.cxx
Mikhail Kalugin
Ну, не unique_ptr же, он для этого не предназначен...
unique_ptr<void, close_handle> ;)
источник

MK

Mikhail Kalugin in supapro.cxx
Dmitriy
WinAPI от меня никуда не денется, а ворочать сырые дескрипторы в коде на C++17 я не намерен
Да ты же не сможешь нормально удалить void даже если захочешь. Какой у него размер?
источник

NM

Nastya Medveda in supapro.cxx
Sergey Sobolev
зачем вам с++ нужен? Складывается впечатление, что у вас цель не понять, откуда начать изучать, а вылить свою ненависть к языку в этом чате, не успев разобраться, зачем он нужен
Без негатива. Ну я во-первых его не знаю чтоб к нему свою ненависть выливать. А во вторых он мне нужен как дополнение к моему небольшому знанию питона.

Зачем же он мне нужен.
Прежде всего мне интересно поковыряться на несколько более низком уровне - понять как работает компьютер.

Во вторых (чисто теоретически) я хочу получить комбо из двух языков питона и С++, и использовать их там, где каждый язык хорош.

Ну и в третьих я провожу отпуск сидя в квартире из-за дурацкого коронавируса и я купила платку адруино и неплохо было бы какую-нибудь программу на ней запустить. Just for fun.
источник

D

Dmitriy in supapro.cxx
Mikhail Kalugin
Да ты же не сможешь нормально удалить void даже если захочешь. Какой у него размер?
Уф. Наткнулся на незнание typedef void* HANDLE. Понял, перестаю, а то на троллинг с моей стороны похоже :)
источник

MK

Mikhail Kalugin in supapro.cxx
Dmitriy
unique_ptr<void, close_handle> ;)
Ну, это еще более менее.
источник

Е

Егор in supapro.cxx
Mikhail Kalugin
Да ты же не сможешь нормально удалить void даже если захочешь. Какой у него размер?
очевидно же delete reinterpret_cast<T*>(m_ptr->release());
источник

D

Dmitriy in supapro.cxx
Егор
очевидно же delete reinterpret_cast<T*>(m_ptr->release());
Кстати, как вариант. Сохранить тип T в deleter'e не проблема. Но изврат дикий и бессмысленный
источник

MK

Mikhail Kalugin in supapro.cxx
Dmitriy
Уф. Наткнулся на незнание typedef void* HANDLE. Понял, перестаю, а то на троллинг с моей стороны похоже :)
А вот это ничего не доказывает. Тут говорится HANDLE это  нетипизированный указатель.
источник

GF

Georgy Firsov in supapro.cxx
Егор
очевидно же delete reinterpret_cast<T*>(m_ptr->release());
С винапишными хэндлами так не прокатит
источник

D

Dmitriy in supapro.cxx
Mikhail Kalugin
А вот это ничего не доказывает. Тут говорится HANDLE это  нетипизированный указатель.
И?)
источник

Е

Егор in supapro.cxx
Georgy Firsov
С винапишными хэндлами так не прокатит
ну замени делит на CloseHandle или что там
источник