묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
안녕하세요 강사님께서 참조를 손으로 비유적으로 표현하셔서 저도 강의 내용의 코드를 그림으로 표현해봤는데 이 내용이 맞는지 확인부탁드립니다.
Camera c1 = new Camera(); // c1은 첫번째 풍선을 잡고 있음 Camera c2 = new Camera(); // c2는 두번째 풍선을 잡고 있음 Camera tempCam1 = c1; // c1의 손을 잡아달라고 요청 Camera tempCam2 = c2; // c2의 손을 잡아달라고 요청 c2 = c1; ... changeName(c2); System.out.println(c1.name); System.out.println(c2.name); c1 = null; c2 = null; // c1, c2가 풍선을 놓침!! System.out.println("----------------"); c1 = tempCam1; // c1은 tempCam1의 손을 잡음 c2 = tempCam2; // c2는 tempCam2의 손을 잡음 // changeName(c2)에 의해 c1이 잡고 있는 풍선의 이름만 "잘못된 카메라"로 변경 //(=>null로 인해 가리키는 관계는 끊겼지만, 참조값이 변경된 메모리는 여전히 남아있다는 소리) System.out.println(c1.name); // 잘못된 카메라 System.out.println(c2.name); // 카메라2 public static void changeName(Camera camera){ // c2의 인자가 파라미터에 들어가서 camera.name = "잘못된 카메라"; // c2.name = "잘못된 카메라"; }여기서 제가 궁금한 점은, Camera tempCam1 = c1; Camera tempCam2 = c2; 부분에서 temCam1과 temCam2가 그림과 같이 인스턴스 변수뿐만 아니라, 인스턴스 변수가 가리키고 있는 참조값도 동시에 가리키고 있는 것이 맞을까요??
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
정렬 함수 만들기 관련 질문
정렬 함수 만드는 과정에서 Swap부분을 이용하는 대신 저는 참조를 사용하여 변형하고 싶었습니다. 보이는 사진처럼 진행하였으나 올바른 값이 나오지 않는데 왜 그런지 모르겠습니다.
-
미해결mongoDB 기초부터 실무까지(feat. Node.js)
mongoDB의 참조무결성 제약
안녕하세요, 좋은 강의를 촬영해주셔서 감사히 잘 듣고 있습니다. 다름이 아니라, 강의를 듣고 난 이후 실제 어플리케이션 API 서버를 작성하다가 궁금한 점이 생겨서 질문 드리게 되었습니다. 일반적인 SQL DB를 이용했을 경우에는 스키마에 참조무결성을 지정하고 cascade 등 관련 제약을 지정하면 dbms 단에서 이들이 구현되는 것에 비해서, MongoDB를 이용해서 ODM인 mongoose로 스키마를 형성하는 경우 참조 무결성 제약을 만드는 게 매우 어렵다는 것을 느끼게 되었습니다. 데이터베이스 모델링 자체를 NoSQL 스럽게 진행하여 최대한 nested document 혹은 subdocument를 이용해서 one-document ACID를 구현하고자 하는 철학은 잘 이해되고 그렇게 최대한 진행하였는데요.. 개체 자체의 본질적인 속성으로 인하여 collection 간의 ref로만으로 처리할 수밖에 없을 경우에는 이를 활용하였는데, 참조무결성을 구현하기 위해서는 여러 번의 쿼리가 필요한 것을 알게 되었습니다. 여기에서 질문이 좀 있게 되었습니다.#1. 참조무결성 구현을 위하여 multi-document 간의 ACID를 지키기 위해서 transaction을 사용할 수밖에 없었는데, isolation 수준은 document level에서 진행되는 것일까요? 아니면 collection 자체에 쓰기금지까지 지정이 되는 것일까요? #2. 몽고db 자체가 schemaless이기에 참조 무결성을 위한 지원이 없다는 것은 이해가 되는데, 그럼 실무에서 참조 무결성 제약이 필요한 경우에는 모두 ODM과 같은 tool을 이용하여 server단에서 구현하는 것이 최선일지요? 혹시 다른 더 좋은 방법이 있을지요?#3. 저는 mongoose와 관련된 라이브러리 중 만족스러운 오픈소스 ref > id validator가 없어서 직접 구현해서 사용하고 있는데 혹시 좋은 tool이 있을지 궁금합니다.(심지어 custom validator나 middleware을 이용해 구현할 때에는 순환참조의 문제가 발생할 수밖에 없는 듯하여 RESTful API 혹은 graphQL resolver 단계에서 구현하고 있습니다. 이렇게밖에 할 수 없는지 궁금합니다.) 다시 한 번 좋은 강의 촬영해주신 것에 매우 감사드립니다. 오늘도 좋은 하루 되셨으면 좋겠습니다. 감사드립니다.
-
미해결홍정모의 따라하며 배우는 C++
궁금합니다
안녕하세요 reference로 함수인자를 전달할때 L-val 이면 &로 R-val이면 &&로 받는걸로 알고있습니다 그런데 const type & val 로 받아도 R-val 처럼 작동을 하는것 같은데 이건 코딩 스타일에 따라 나눠지는건가요? void f(int &&r) void f(const int&r)이 두개 다 있을때 &&인자를 가지는 함수가 호출되는것으로 알고있습니다