0
나는 녹에 새로 온 사람과 한 순간 이해가 안 : 이해할 수없는 behaivior() -> & STR 기능
는 말한다 : "당신은 정말 포인터를 반환해야하지 않는다"를. 저는 괜찮습니다. HelloWorld와 비슷한 프로그램에서 & str을 반환하려고했습니다. 나는 boxed String을 필요로하지 않는다. 단지 & str이어야한다. 그리고 저는이 챌린지에서 성공했지만 부분적으로 만 성공했습니다.그래서, 질문 자체 :
내가 이
fn foo(p: &[uint]) -> &str { "STRING" }
하지만 을 할 수있는 이유는 없습니다
fn foo(p: Vec<uint>) -> &str { "STRING" } //error: missing lifetime specifier [E0106]
할 수 있지만 여전히 할 수
fn foo(p: Vec<uint>) -> &'static str { "STRING" }
슬라이스에서 Vec 로의 전환 사실은 어떻게 바뀌나요?
P. 내 거짓 영어 및 가짜 질문에 대해 유감스럽게 생각합니다. 난 그냥 녹의 차용 - checher의 포인트를 얻을하지 않습니다 생각
"포인터를 돌려 보내지 말것"비트는 호출자에게 'Box'또는 다른 소유 포인터를 강제하는 것을 의미합니다. 빌린 포인터가 과도한 왜곡없이 작동하면 사용하십시오. – delnan