2015-06-05 5 views
4

Rust, по-видимому, use по некоторым пространствам имен. Например, мне не нужно использовать std::string::String и просто введите String. Как я могу определить свой собственный struct String без столкновения с std::string::String? И где я могу найти список пространств имен, которые включены по умолчанию?Отключение пространств имен по умолчанию

ответ

5

Вы можете создать свой собственный String по ... создавать свои собственные строки:

struct String { 
    len: u8, 
} 

fn main() {} 

Вы можете неоднозначности, которые String вы хотите, используя полностью квалифицированные пути:

fn main() { 
    // String::new(); 
    // error: type `String` does not implement any method in scope named `new` 

    std::string::String::new(); 
} 

Полный список автоматически импортируемых товаров можно найти in the prelude (версия 1, на момент написания).

6

Это не вопрос «пространства имен по умолчанию», это the prelude.