字符串“abc”是否与unordered_set中的“bca”相同?
我想利用 astd::unordered_set来存储一堆字符串。如果我插入字符串"abc", "def", "bca",结果集将包含什么?
set = { {"abc"}, {"def"}, {"bca"} }
或者
set = { {"abc"}, {"def"} }
??
由于字符串"abc"和"bca"具有相同的字符,即使它们不完全相等。
回答
unordered_set指元素的顺序内的设定是不相关的(又名{1,2,3}和{2,1,3}是等效的)。它并不意味着该元素的实际值的顺序是无关紧要的。"abc" 和 "bca" 是不同的字符串,因此具有不同的值,因此您的集合具有 3 个唯一元素。