묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결홍정모의 따라하며 배우는 C++
14.3 예외처리 클래스 상속과 객체 잘림에 대하여 질문 있습니다.
클래스는 Exception 클래스와 Exception 클래스를 상속받은 ArrayException 클래스를 선언 했습니다. 보시는 바와 같이 메인 함수에서 doSomething 함수를 호출합니다. 그리고 doSomething 함수 내부에서 my_array[100]에서 오버로딩한 [ ] 연산자 함수를 호출합니다. 그러면 오버로딩한 [ ] 연산자 함수에서 예외가 발생하여 throw에 의해서 ArrayException타입 객체를 기본 생성자를 호출하여 생성된 객체를 doSomething 함수의 내부에 있는 catch에 넘겨줍니다. 그렇게 되면 catch 옆에 (Exception& e) 처럼 값에 의한 전달이 아닌 참조에 의한 전달로 객체 자체를 넘겨줍니다. 그러면 Exception 클래스를 상속받은 ArrayException객체 자체를 e로 넘겨줍니다. 그리고나서 e.report()를 통해서 report 함수에 구현된 내용이 실행됩니다. 여기서 제가 궁금한것이 있습니다. 객체 잘림현상은 참조에 의한 전달이 아닌 값에 의한 전달에서 발생한다고 배웠는데 어째서인지 값에 의한 전달이 아닌 참조에 의한 전달로 객체 자체를 전달 했음에도 코드 실행 결과는 ArrayException클래스에서 구현한 report 함수의 내용이 아닌 Exception클래스에서 구현한 report 함수의 내용이 실행됩니다. 제가 알고있는 객체 잘림 현상에 대한 지식이 잘못된 것인지 아니면 예외 처리 클래스의 상속에 대해한 객체 잘림 현상이 특별한 경우인지 아니면 단순히 throw e와 throw의 차이인지 궁금합니다. 그다음에 메인 함수에서도 (Exception& e)에 값에의한 전달이 아닌 참조에 의한 전달로 객체 잘림이 발생한 ArrayException클래스 타입의 객체가 전달됩니다. 그리고 Exception 클래스에서 구현한 report 함수가 실행됩니다. 여기서는 doSomething 함수의 내부에서 객체 잘림 현상이 발생해서 Exception 클래스에서 구현한 report 함수가 실행된거라고는 이해가 됩니다. 그러면 왜 doSomething 함수 내부에서 객체 잘림이 발생한 것인지 궁금해서 질문 드립니다. 긴글 읽어주셔서 감사합니다.
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
Selective Search - import cv2 에러 해결법
https://stackoverflow.com/questions/55313610/importerror-libgl-so-1-cannot-open-shared-object-file-no-such-file-or-directo 혹시 ImportError: libGL.so.1: cannot open shared object file: No such file or directory 에러가 뜬다면 위의 링크에서 처럼 $ sudo apt-get install libgl1-mesa-glx 를 실행하세요
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
더보기 버튼 아이템 딱 8개 일 때
안녕하세요! 카드 아이템이 딱 8개일 때는 더보기 버튼이 안 보여야하는데, 보이는 걸 해결하려면 PostSize >= Limit이 아니라 PostSize > Limit 으로 하면 될 줄알았는데, 안되더라구요! 왜 그런지 설명해주시면 감사하겠습니다! {PostSize >= Limit && ( <div style={{ justifyContent: 'center' }}> <button onClick={loadMoreHandler}>LOAD MORE</button> </div> )}
-
미해결인스타그램 클론 - full stack 웹 개발
HTML에서 django태그로 model에 있는 데이터를 가져오는데...
{{ post.author.profile.nickname }} 이런식으로 HTML에다가 태그를 달아서 데이터를 가져오는데.. 이게 저희가 accouts랑 post랑 model.py를 따로 만들었는데 post에서 author를 가져오는데 어떻게 post에서 만든 author가 accounts에서 만든 profile model의 이미지를 가져오는지 궁금해서 어 제가 설명을 못해서.. - accounts의 profile 모델이랑 post의 Post 모델을 만듬 - post의 데이터를 HTML에다가 가져오는데 {{ author.profile.nickname }} 이렇게 가져왔는데 여기서 궁금한게 .. profile의 모델은 accounts에서 만들었는데 어떻게 post 모델에서 가져올수 있는지 궁금합니다... 하 정말 저 설명 못하는거 같내요.. ㄷㄷ 너무 궁금해요~~~~~~~~~~~
-
미해결리액트로 구현하는 블록체인 이더리움 ERC721(NFT)
버전차이
아니 이거 뭐 강좌 찍은 시점이랑 현재버젼이랑 너무 차이가 나서 다 에러 나는데 솔리디티나 기타 설치 파일들 버전 지정해서 설치하는 방법은 없나요? 어느정도 시점이 되면 강좌를 업데이트 해주셔야 되는데 돈주고 들어도 실행도 안 되니깐 너무 한 것 같네요
-
미해결Vue.js 끝장내기 - 실무에 필요한 모든 것
mac 에서 안되서 질문드립니다.
nvm 설치 후 bashrc 파일도 잘 만들었는데, nvm 실행이 안되네요; 뭔가 경로가 ~/.bashrc 아닌건지 잘 모르겠습니다^^; nvm source string already in /Users/minsukong/.bashrc bash_completion source string already in /Users/minsukong/.bashrc 이렇게 뜨는데 기존 node 플젝하면서 경로가 저렇게 잡혔던거 같습니다. 자문자답합니다;; ㅎㅎ 찾아보니 아래와 같이 하면 되더라고요 감사합니다! https://gist.github.com/falsy/8aa42ae311a9adb50e2ca7d8702c9af1
-
미해결머신러닝 이론 및 파이썬 실습
텐서플로우가 안깔립니다.
tensorflow를 다운하기 위해 conda install -c conda-forge tensorflow 를 적고 실행하였는데 UnsatisfiableError: The following specifications were found to be incompatible with the existing python installation in your environment: Specifications: - tensorflow -> python[version='3.5.*|3.6.*|>=3.5,<3.6.0a0|>=3.6,<3.7.0a0|>=3.7,<3.8.0a0|3.7.*'] Your python: python=3.8 If python is on the left-most side of the chain, that's the version you've asked for. When python appears to the right, that indicates that the thing on the left is somehow not available for the python version you are constrained to. Note that conda will not change your python version to a different minor version unless you explicitly specify that. 이런 형식으로 뜨는데 파이썬을 다운그레이드 하고 CUDA를 깔란것이 맞나요? 영상에서는 특별히 더 까는것이 없었는데 어딘가 잘못된건가요?
-
미해결[OpenCV] 파이썬 딥러닝 영상처리 프로젝트 - 손흥민을 찾아라!
안녕하세요.
안녕하세요. 딥러닝에 관심이 있어서 손흥민을 찾아라 강의를 듣고있는 학생입니다. 다름이 아니라 강의에서는 동영상으로 손흥민 선수 얼굴을 찾는데 동영상이 아닌 노트북 캠을 이용해서도 손흥민선수를 찾는것과 같이 특정인물을 찾을 수 있는지 궁금합니다. 또, 영상에서 손흥민선수를 찾으면 손흥민 선수를 제외한 나머지 선수들의 얼굴은 모자이크처리를 할 수 있게 구현이 가능한지 궁금해서 질문드립니다!! 만약 가능하다면 이것도 노트북 캠을 이용해서 특정인물을 제외한 나머지 사람들도 모자이크가 가능한지 궁금합니다!!
-
미해결컴퓨터, 웹, 코딩, 프로그래밍의 시작 - Web1
넷북인데 가능?
사양 존나 낮은데 가능?
-
미해결따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
문의
image로 container 만들때 id대신 이름으로 주는부분은 몇강에서 있었나요? 분명 언급하였던거 같은데, 이 근방 5개 동영상을 봤는데 찾기가 힘드네요.. 6:26 진행하신 내용 예로들면 docker exec 2f311~ redis-cli 대신 docker exec myredis redis-cli 로 실행하고 싶으면 myredis를 create/start/run 시점에 어떤 옵션으로 적용할지에 대한 부분입니다..
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
type error 가뜨는데 원인을 잘 모르겠어요.
로그인 버튼 클릭 시 아래 오류가 뜨는데 어디가 문제일까요.?index.js:43 은 입니다. const rootReducer = (state = initialState, action) => { switch (action.type) { case HYDRATE: console.log("HYDRATE", action); return { ...state, ...action.payload }; case LOG_IN: return { ...state, user: { user: dummyUser, isLoggedIn: true, loginData: action.data, // user: action.data, }, }; case LOG_OUT: return { ...state, user: { ...state.user, isLoggedIn: false, user: null, }, }; default: return state; } }; ㅡㅡㅡㅡuseForm.js:751 TypeError: Cannot read property 'type' of undefined at rootReducer (index.js:43) at LoginForm.js:24 at onFinish (Form.js:77) at useForm.js:748ㅡㅡㅡㅡ
-
미해결C 프로그래밍 - 입문부터 게임 개발까지
밑에 파일이 없는데 어떻하나요??
(사진)
-
미해결쉽고 빠르게 끝내는 GO언어 프로그래밍 핵심 기초 입문 과정
고루틴 클로저 관련
안녕하세요.고루틴 클로저 설명중에반복문 클로저는 일반적으로 즉시 실행,But 고루틴 클로저는 가장 나중에 실행(반복문 종료후) 가 어떤 의미인지 잘 아해가 안되는데요. for문이 끝나고 나서 고루틴이 실행된다는 의미이신가요?고루틴 안에 sleep 넣어보니 고루틴들이 실행되는거 같아서요. 답변 부탁드립니다.
-
미해결'이것이 리눅스다' 저자의 Red Hat CentOS7 리눅스 서버&네트워크 강좌
서버 설치 불가
서버를 몇번 설치했는데 같은 오류가 나네요... 문제좀 알려주세요
-
미해결시간의 마법사 RxJS - setTimeout 은 No! 모든 비동기 작업들을 한방에 해결하자
강의 영상의 해상도를 더 높일 수는 없나요?
해상도를 설정가능한 720p 까지 높여서 보고 있는데 영상 자체의 해상도가 낮아서 그런지 강의에서 찍어주시는 코드가 다른 강의들에 비해 다소 흐리게 보입니다. 혹시 올려주신 강의 영상들의 경우 해상도를 더 높일 수는 없나요?
-
미해결현존 최강 크롤링 기술: Scrapy와 Selenium 정복
selenium 오픈 문제
부트 캠프를 잘 수강했다고 생각하고 selenium 강좌로 넘어왔는데 오자마자 위와 같은 문제가 발생하네요 ㅠㅠ 강사님 말씀해주신 것 처럼 chromdriver.exe 파일 C드라이브에 폴더 만들어서 넣어 놨는데 위와 같은 오류 메시지가 바로 발생해서 문의드립니다.
-
미해결예제로 배우는 스프링부트 입문
안녕하세요 질문드립니다!
loginForm.jsp 에서 form action="${loginUrl}" 의 loginurl 값 은 WebSecurityConfig.java 파일의 http.formLogin().loginPage("/loginForm") 에서 넘겨주는건가요??
-
미해결Node.js 교과서 - 기본부터 프로젝트 실습까지
sns 강의 수강 중 질문있습니다.
게시글 업로드 구현하기 까지 수강해서 아래 사진까지 구현하였습니다. 이 상태에서 회원가입 하고 그 아이디로 로그인하면 아래같은 메시지가 뜨는데 왜 그런건가요?? router index 파일 입니다. router.get("/", async (req, res, next) => { await Post.findAll({ include: { model: User, attributes: ["id", "nick"], }, }) .then((posts) => { res.render("index", { title: "NodeBird", twits: posts, user: req.user, loginError: req.flash("loginError"), }); }) .catch((err) => { console.error(err); next(err); }); }); module.exports = router; index pug 파일입니다. extends layout block content .timeline if user div form#twit-form(action='/post' method='post' enctype='multipart/form-data') .input-group textarea#twit(name='content' maxlength=140) .img-preview img#img-preview(src='' style='display: none;' width='250' alt='미리보기') input#img-url(type='hidden' name='url') div label#img-label(for='img') 사진 업로드 input#img(type='file' accept='image/*') button#twit-btn.btn(type='submit') 짹짹 .twits form#hashtag-form(action='/post/hashtag') input(type='text' name='hashtag' placeholder='태그 검색') button.btn 검색 for twit in twits .twit input.twit-user-id(type='hidden' value=twit.user.id) input.twit-id(type='hidden' value=twit.id) .twit-author= twit.user.nick -const follow = user && user.Followings.map(f => f.id).includes(twit.user.id); if user && user.id !== twit.user.id && !follow button.twit-follow 팔로우하기 .twit-content= twit.content if twit.img .twit-img img(src=twit.img alt='섬네일') script. if (document.getElementById('img')) { document.getElementById('img').addEventListener('change', function (e) { var formData = new FormData(); console.log(this, this.files); formData.append('img', this.files[0]); var xhr = new XMLHttpRequest(); xhr.onload = function () { if (xhr.status === 200) { var url = JSON.parse(xhr.responseText).url; document.getElementById('img-url').value = url; document.getElementById('img-preview').src = url; document.getElementById('img-preview').style.display = 'inline'; } else { console.error(xhr.responseText); } }; xhr.open('POST', '/post/img'); xhr.send(formData); }); } document.querySelectorAll('.twit-follow').forEach(function (tag) { tag.addEventListener('click', function () { var isLoggedIn = document.querySelector('#my-id'); if (isLoggedIn) { var userId = tag.parentNode.querySelector('.twit-user-id').value; var myId = isLoggedIn.value; if (userId !== myId) { if (confirm('팔로잉하시겠습니까?')) { var xhr = new XMLHttpRequest(); xhr.onload = function () { if (xhr.status === 200) { location.reload(); } else { console.error(xhr.responseText); } }; xhr.open('POST', '/user/' + userId + '/follow'); xhr.send(); } } } }); });
-
미해결it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
문제에서 가장자리를 0으로 채운 가정
이 가정이 왜 있나 생각해보니 4방 검색을 할때 Map의 범위를 벗어나는 조건 check 를 하지 않아도 되는 의도된 설정이었군요..
-
미해결리액트로 나만의 블로그 만들기(MERN Stack)
nodemon이 반응하는 이유
nodemon이 바라보고 있는 server.js와 app.js를 보면 클라이언트 쪽 컴포넌트 일부를 참고하거나 아직 클라이언트서 요청이 온 건 없는 것 같은데 어떻게 클라이언트 폴더의 변화를 알아채고 반응하는 건지 궁금합니다. nodemon은 클라이언트 폴더가 루트 디렉토리에 포함되어 있고 nodemon이 그 변화를 바라보고 있어서 반응하는 건가요?