- 질문 게시판입니다.
Date 24/04/17 15:48:38수정됨
Name   T.Robin
Subject   Rust 프로그래밍: constructor 내부 closure에서 Self의 객체를 불러서 처리하기
Rust 도전 일주일차인 T.Robin입니다(아 응애에요).
대충 아래의 코드가 있습니다.



struct S1 {
    element1: AAA,
    element2: BBB,
}

impl S1 {
    pub fn new()->Self {
        let result = Self { element1: Element1::new(), element2: Element2::new() }
        // 뭔가 이것저것......

        result.element1.do_something( {
            let element1_weak_reference = result.element1.get_weak_reference().unwrap();
            move || {
                // 여기가 문제
                result.element2.do_something_else( element1_weak_reference.do_something() );
            }
        });

        // 완료
        result
    }
}



아마 눈치채셨겠지만, 이 코드는 빌드되지 않습니다. [//여기가 문제] 부분에서 result.element2가 closure 안쪽으로 이동해버려서, 마지막 "[//완료]" 부분에서는 result.element2가 아직 변수를 빌려준 상태로 남아있게 되어서 컴파일러가 투덜댑니다(요컨데, closure가 본문보다 더 오래 살아남을 수 있다....... 뭐 이런 내용입니다).

아예 unsafe 선언하고 C++ 스타일 raw pointer로 막무가내로 밀어부쳐 보기도 했습니다만 프로그램이 터지는걸 보면 이것도 답은 아닌 것 같습니다.
이 경우, 어떻게 처리해야 될까요?



0


목록
번호 제목 이름 날짜 조회 추천
15780 여행경주여행 숙소 질문입니다. 24 켈로그김 24/04/18 726 0
15779 기타인생 최고의 버거 추천부탁드립니다. 13 퍼그 24/04/18 817 0
15778 의료/건강사무실에 간식 두고 퇴근했는데 낼 먹을 수 있을까요? 9 OneV 24/04/17 858 0
15777 경제재테크 알못이 질문드립니다 11 헬리제의우울 24/04/17 774 0
15776 의료/건강남자 유두 붓기 4 [익명] 24/04/17 776 0
15775 경제홍차넷 1인가구 청년분들은 월급의 몇%를 모으시나요? 28 [익명] 24/04/17 1087 0
15774 IT/컴퓨터Rust 프로그래밍: constructor 내부 closure에서 Self의 객체를 불러서 처리하기 6 T.Robin 24/04/17 557 0
15773 게임닌텐도 타이틀 추천 부탁드립니다 :) 13 Broccoli 24/04/17 485 0
15772 여행위탁수화물 물건 중 빼야되는 것을 골라주세요 6 DogSound-_-* 24/04/16 706 0
15771 IT/컴퓨터요즘은 타자 연습 뭘로 할까요? 11 토비 24/04/16 720 0
15770 IT/컴퓨터모바일에서 보기 편한 스프레드시트? 4 메존일각 24/04/16 645 0
15769 가정/육아마누라 핸드폰 사용한지가 4년이 넘었읍니다. 24 허윤진남편 24/04/16 959 0
15768 문화/예술서울 교보문고 괜찮은 지점 16 마우스노동러 24/04/15 999 0
15767 기타화장실 제품 (변기,소변기,세면대) 고오급 브랜드?? 10 Groot 24/04/15 787 0
15765 가정/육아어머니 생일 선물... 무엇이 좋을까요? 8 휴리스틱 24/04/15 631 0
15764 법률빌려준 돈 이자 계산 3 [익명] 24/04/15 853 0
15763 과학지구상의 모든 생명체는 산소를 필요로 하는지요...? 6 홍당무 24/04/14 1027 0
15762 문화/예술색소폰을 사려면 어떻게 해야할까요?? 4 유아 24/04/14 770 0
15761 IT/컴퓨터제가 운영하는 웹사이트에 error_log 파일이 쌓이고 있는데 도움부탁드립니다. 4 스톤위키 24/04/13 733 0
15760 의료/건강독세핀염산염 부작용 질문드립니다. 3 [익명] 24/04/12 714 0
15759 여행혹시 마산합포구 쪽에 차돌박이 잘하는데 있을까요? 허윤진남편 24/04/12 540 0
15758 기타이 식물 이름이 무엇일까요? 2 아재 24/04/12 703 0
15757 IT/컴퓨터TV로 파일 영상을 잘 보려면? 1 2024 24/04/11 546 0
15756 의료/건강녹내장에 관해 잘 아시는분 계실까요? 1 어둠달골짜기 24/04/11 707 0
15755 IT/컴퓨터알뜰폰 쓰는 사람이 해외여행갈때 어떻게 하면 좋을지요? 6 Broccoli 24/04/11 886 0
목록

+ : 최근 2시간내에 달린 댓글
+ : 최근 4시간내에 달린 댓글

댓글