Square
Square
Если запилишь сабж - я куплю )
Если запилишь сабж - я куплю )
На линуксе была бы тема
Alexander
так вообще можно? если да, то почему вывод такой? #include <iostream> #include <string> #include <vector> #include <memory> #include <map> #include <unordered_map> #define PR cout << __PRETTY_FUNCTION__ << endl using namespace std; class A { public: A() { PR; } virtual ~A() { PR; } }; class B : public A { public: B() { PR; } ~B() { PR; } }; int main () { unordered_map<int, A> m; m.insert({1, B()}); return 0; } A::A() B::B() virtual A::~A() virtual B::~B() virtual A::~A() virtual A::~A()
Alexander
на инсерт смотрите
Yevhen
в хеш А по значению ложится и усекается
Alexander
какой хеш? ключ инт
Я про макбук
Чтобы тачбар в линуксе был
Alexander
с map такой же результат
Yevhen
unordered_map<int, A> m; принимает int и инстанс от A по значению m.insert({1, B()}); Ложишь int и B(), который усекается до А
Yevhen
unordered_map<int, A*> m; m.insert({1, new B()}); Если так, то должно быть ок
Vladislav
Чтобы тачбар в линуксе был
это сначала дрова под эту панельку для линукса написать
Alexander
Yevhen
какой хеш? ключ инт
unordered_map это хеш таблица
Yevhen
спасибо, с указателями все логично
пожалуйста. лучше, конечно умые указатели использовать. я сырые просто для примера написал например unordered_map<int, std::unique_ptr<A» m и память очистит и работать будет, как нужно
Vladislav
спасибо, с указателями все логично
будь осторожен с указателями в коллекциях - менеджмент памяти становится нетривиален
Alexander
это понятно
Поделетил каждый и все
Vladislav
например, m[k] = v; может затереть старый указатель без удаления
✙ Fatum ✙
зачем вообще в винде utf-16 впилили, я не понимаю
потому что майкрософтт! у меня сложилось впечатление, что они половину либ писали, абы не так как у всех чтоб было
Square
потому что майкрософтт! у меня сложилось впечатление, что они половину либ писали, абы не так как у всех чтоб было
Та не, у утф16 есть ряд преимуществ. Тем более что очень много потребителей винды это страны Азии
Square
Будь вы на месте мс, я думаю вы бы так же поступили
✙ Fatum ✙
интересно, где больше всего виндой пользуются в % соотношении
✙ Fatum ✙
в индии наверное
Square
Китай тоже много
Square
А много их наречий в 2 байта влезут
Square
А утф8 будет уже три
Square
Предстаньте что дистриб у вас в три раза больше становится условно говоря
Alexey
чтож не UTF-32 сразу
Square
Square
В утф16 влазит все
Lev
В утф16 влазит все
ага. открой для себя суррогаты и боль
Square
Суррогатные пары никогда не встречал
Square
Но при всём при этом у меня все в утф8)
Square
И qt в продакшне
Square
Тоже слезы
Lev
Суррогатные пары никогда не встречал
это всё злые китайцы с их иегроглифичным изобилием
Square
Когда в оракл надо лить
Anonymous
babysitter
утф8 же мультибайт, она даже четыре байта может быть
babysitter
о, на вики пишут даже 6 может быть. в любой utf влазит все, просто он увеличивает количество байт на символ,если символ редкий
Square
утф8 же мультибайт, она даже четыре байта может быть
Ну о об этом и речь. С фиксированной длинной проще работать
Mongolitsky
Кто работает с полигональными профилями/моделями? Не могу написать быстрый шаблон/алгоритм по которому будет находить определенную точку
Шухрат
ребят поможете?
Шухрат
спасибо большое вы такие добрые
Шухрат
Mongolitsky
октодерево поможет? https://ru.wikipedia.org/wiki/%D0%9E%D0%BA%D1%82%D0%BE%D0%B4%D0%B5%D1%80%D0%B5%D0%B2%D0%BE
пролистывал эту тему в поисках оптимального алгоритма у меня задача чуть проще тут пространственные модели, а у меня только двухмерный набор точек, и в нем нужно найти, зазор допустим, между двумя наборами точек объеденненных в линию
Alexander
убери одну координату и будет 2д
Alexander
https://habrahabr.ru/post/130278/
Mongolitsky
в принципе да ладн, спасибо, будем пробовать внедрять
Alexander
for (const auto& it = ret.first; it != ret.second; it++) { } const auto& в этом случае норм писать?
Alexander
чтобы не копировать интератор, а просто сохранить ссылку. должно быть быстрее
Alexander
for (const auto& it = ret.first; it != ret.second; it++) { } const auto& в этом случае норм писать?
наверное, это неправильно, т.к. begin не возвращает ссылку.
Churchill
666 участников в чате
Шухрат
агась уже давно так
Churchill
ребят поможете?
задавай сразу вопрос и не протупливай
Шухрат
#include <iostream> #include <conio.h> #include <cstring> using namespace std; int main() { setlocale(LC_ALL, "Russian"); char str1[80], str2[80]; cout « "Введите первую перемееную:"; cin.getline(str1, 80); cout « "Введите вторую переменную: "; cin.getline(str2, 80); system("cls"); cout « "str1: \"" « str1 « "\"\n"; cout « "str2: \"" « str2 « "\"\n"; strcpy(str2, str1); cout « "str2: \"" « str2 « "\"\n"; _getch(); return 0; }
Шухрат
вот на Endlishe
Шухрат
вот такую ошибку выдает но консоль открывает
вот на Endlishe
strcpy_s используй
Шухрат
Enver Akhtemov
Добрый вечер. Хочу начать изучение C++ , посоветуйте где изучать?
Anonymous
ни где а с чего
Anonymous
с книжки
Полностью
С K&R
Чтоб как от зубов
Anonymous
жестко