Станислав Макаров: хммм. про хеши почти ничего не знаю
про недостижимость абсолютной уникальности я так понял невозможно тк количество комбинаций 20 символов гораздо больше max uint.
да чет хз почему мне это сразу в голову не пришло )))
меня интересует как тогда будет работать QSet если хеши не уникальные. там только для поиска хеш используется? а соответствие непосредственно по ключу идет?
тоесть если отобразится в одно значения хешевое 2 ключа(совпадение), то при вызове QSet.contains(x), он сначала по хешу найдет два значения а потом сравнит с каждым и даст ответ ?
я просто почему то в 4 утра подумал хеш=ключ в QSet, хех.
прошу прощения за глупость :)
это имеет смысл только если тебе важно смотреть на рынок труда. а если кому-то рынок труда идентеферентен? а если кому то нужен язык под конкретные проекты (тк они ему интересны или полезны, например в научной деятельности?)
рынок труда посмотреть стоит. но ориентироваться на него следует только тем кто работает только ради денег, причем именно разработчиком.
Все понятно. l-value , r-value не понял, но я думаю загуглю если гуглится.
Но я, опять же, спрашиваю не вообще зачем такие конструкции/типы данных нужны вообще.
А зачем в С++ в больших/хороших проектах может использоваться передача объекта по значению (зачем если есть const &).
И зачем может использоваться передача указателя на единичный объект (зачем так использовать если это идентично передаче по ссылке. и вообще указатель же по сути и содержит ссылку).
да я понимаю эти базовые вещи. мне не понятно зачем "по значению" когда можно "по const ссылке". при этом же данные также неизменяемы.
Единственная идея когда это может понадобиться - когда алгоритм внутри функции такой, что изменяет объект, при этом в вызывающем коде объект не должен изменяться этой функцией.
Причем это можно заменить через const ссылку, но тогда придется прописывать копирование объекта самому, а программист существо ленивое и поэтому передача объекта по значению имеет какой-то смысл помимо усложнения языка.
По поводу указателя - опять же я спрашивал не вообще зачем такой элемент. А зачем на практике нужна передача указателя ведь по сути передается опять же ссылка на объект и если в функцию нужно передать 1 объект, то указатель особо смысла нету передавать, т.к. это равноценно передачи по ссылке (поправьте если не прав).
Также единственная догадка, когда это может понадобится: если нужно передать указатель на указатель, т.е. когда в функции нужно менять значение указателя.
Ну это помимо того когда передается указатель на часть массива и используется в алгоритме функции в качестве итератора.
Я очень новичок, поэтому поправляйте если я где-то не так понимаю.