По разным причинам мне нравится вызывать обычные методы, как если бы они были c, например, без использования точечной записи. (Например, Vec::len( &v )
вместо v.len()
.) Я всегда могу сделать это своими собственными методами; однако с некоторыми методами, принадлежащими стандартной библиотеке, я по какой-то причине не могу этого сделать. Например, Vec::binary_search( &v, &t )
не компилируется («для struct std::vec::Vec<_>
в текущей области не найдено ни одной функции или связанного элемента с именем binary_search
»), даже если v.binary_search( &t )
делает. Почему?