묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결홍정모의 따라하며 배우는 C언어
const와 배열, 포인터
10.10 강의에서const double* const pd 비쥬얼스튜디오 버젼으로 작성되었습니다.전 강의에서 알려주신 대로 다른 버젼으로 바꿔보니const double *const pd 가 되었습니다.const double const *pd 라고 생각했었는데const double *const pd 로 표기되는 건 이렇게 원래 이렇게 설정된 건가요?
-
미해결
템플릿 클래스 안의 복사 생성자와 참조자의 const 위치...
template <class T> class shared_ptr { public: shared_ptr (shared_ptr const& r); // "타입 const& 이름" 의 의미?? template <class Y> shared_ptr (shared_ptr<Y> const& r); ... }; 여기서 잘 모르겠는게 2가지가 있는데요... 첫 째는 참조자 선언에 const가 붙은 위치입니다.포인터에선 int* const abc = &d; 처럼 타입 뒤에 const 가 붙어서 주소를 못 바꾸게 하는게 있는건 아는데요.저 예제에서 "shared_ptr& const r "이 아니고 "shared_ptr const& r" 로 &의 위치가 다르게 되어있는 의미가 무엇인지 잘 모르겠습니다.. 그리고 두번째는shared_ptr 클래스가 템플릿인데 맨 첫번째 일반 복사 생성자에서 매개변수로 shared_ptr 이라는 타입으로 받는다는 의미가 무엇인지 잘 모르겠습니다. shared_ptr<T> 도 아니고 딱 "shared_ptr" 만 써져 있는 건 어떤 의미가 있는 건가요???
-
해결됨이득우의 언리얼 프로그래밍 Part1 - 언리얼 C++의 이해
8강 Getter Setter 에 대한 질문이 있습니다.
안녕하세요 교수님.CPP에 대한 이해가 아직 많이 부족해서 수업을 듣던 중 질문이 생겼습니다. 조금 이상한 질문일 수도 있을것같은데,FString 멤버 변수의 Getter Setter 멤버 함수는FORCEINLINE FString& GetName() { return Name; }FORCEINLINE void SetName(const FString& InName) { Name = InName; }이렇게 인라인 함수 선언과 참조자 반환으로 성능을 중시한 반면, ECardType 열거형 멤버 변수의 Getter Setter의 경우에는ECardType GetCardType() const { return CardType; }void SetCardType(ECardType InCardType) { CardType = InCardType; }이렇게 선언하여 안정성을 추구한 것처럼 보이는데, 이런 설계 이유나 판단 기준이 무엇인가요? 객체의 크기와 특성에 따라 적절한 설계 방법이 조금씩 다르기 때문일까요?
-
해결됨홍정모의 따라하며 배우는 C++
static_assert 매개변수 관련 질문
#include <iostream> #include <vector> #include <cassert> using namespace std; void printVector(vector<int>& temp, const int index) { assert(index >= 3); static_assert(index >= 3, "index should be less than 3");//여기서 컴파일 에러 } int main() { std::vector<int> vec{ 1,2,3,4,5 }; printVector(vec, 3); }static_assert 에서 에러가 나는데매개변수를 const 상수화 해도 static_assert문에서 에러가 나는 이유가 뭔가요?
-
미해결웹게임을 만들며 배우는 인터렉티브웹! JAVASCRIPT
const 변수 및 Arrowfunction 방식 질문
안녕하세요 강사님 질문이 있습니다. 2:21 에서 const 는 흔히 상수형태로 잡기 위해 많이 쓰는걸로 알고 있는데요 이 const 상수 선언 방식에서 ()=> Arrow function 형태가 혼합해서 들어가는것 같은데 어떤 용도인지 궁금해서 질문 드립니다.
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
for문을 돌면서 const에 재할당 되면 원래 에러가 나야하지 않나요? 그리고 예제에서 let (또는 var)대신 const를 사용하신 이유가 따로 있을까요?
본 강의 중 4:45 부터 나오는 내용입니다. const를 쓰게되면 for 문을 돌면서 product 및 price에 값이 재할당 되게 될텐데요. (본 예제에서는 allProducts내의 아이템이 3개이므로 3번 재할당 됨) const로 선언하면 재할당하면 안되니, 에러가 나야하지 않나요? 그리고 추가로, product나 price는 for문을 돌면서 값이 변할수 밖에 없으므로, var나 let으로 선언해도 될 텐데(그렇게 하는게 더 맞아 보이기도 하는데), const를 사용하신 이유가 있으신지요? 감사합니다.
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
var 과 const의 결정적인 차이?
var 과 const 의 공통점은 한번 선언된 변수에 새로운 값을 정의 할수 없다는 것이고, 유의미한 차이점은 const는 변수값이 더이상 변경되지 않도록 할 때 사용한다고 하는데 이것은 var 도 가능한 기능이 아닌가요? var과 const의 기능이 같다면 굳이 둘로 나눈 이유가 뭔가요?
-
미해결홍정모의 따라하며 배우는 C++
7.4 강의에서 const에 의한 값 못바꿈 관련.
9분 45초부터 foo함수 매개변수에 const를 넣으면 포인터 변수의 값을 바꾸지 못한다고하는데,, int*를 pin으로 재정의 즉 typedef int* pin으로 정의하면 값이 바뀝니다. 예외인가요?
-
미해결홍정모의 따라하며 배우는 C++
const 관련 질문입니다.
여러 const 관련 강의를 통해 개념을 잡아가는 중인데 int * const 를 쓰면 포인터자체가 상수화가 돼서 포인터 주소값 변경이 안돼야 하는데 이 함수에서 Getptr 에서 반환값으로 포인터에 래퍼런스 값을 돌려주는데 int *& const 이렇게 돌려줍니다 그러면 main 함수에서 ptr의 주소값이 변경되지 않아야 할 꺼 같은데 왜 변경되는건지 궁금합니다 리턴값 선언에서 int *& 의 정확한 역할이 무엇인지 궁금합니다
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
const char **pp관련 질문있습니다.
const char* msg = "Hello"; const char **pp; 이부분에서 *pp = "BYE"로 교체했을시 변경 가능한 이유가 const 가 보호하는부분이 msg가 가리키는 주소값이고, 그 주소값이 가리키는 rdata값만 변경해서 그값은 const의 보호를 받지 못하기 때문인가요?? 그리고 친구랑 이부분에 관해서 궁금해서 얘기하는중에, const char* str ="hello"; cout << &str<< endl; cout << str << endl; str= "no"; cout << &str<< endl; cout << str << endl; return 0; 이런식으로 코드를 보내줘서 실행을 해보니까 주소값은 str의 주소값은 그대로이고 그 안의 값만 출력할때 hello에서 no로 바뀌던데, 이부분은 str = "no"로할떄 str의 주소를 타고 들어가 str이 참조하는 배열바구니 안에 "no"라는 배열이 복사된다고 생각해도 맞는부분인가요??
-
미해결
const 위치 관련 질문.
안녕하세요, 아무래도 처음하는 공부라서 굉장히 기초적인 부분에 대한 질문인것 같습니다. import {Switch, Route, Link, useHistory} from 'react-router-dom'; import UploadPage from "./upload"; import ProductPage from "./product"; import {Button} from "antd"; import {DownloadOutlined} from '@ant-design/icons' function App() { const history = useHistory(); return ( <div> <div id="header"> <div id="header-area"> <Link to="/"> <img src="/images/icons/logo.png"/> </Link> <Button size="large" onClick={function(){ history.push('/upload'); }} icon={<DownloadOutlined/>} >상품 업로드 </Button> </div> 위 부분에서 const history= useHistory(); 가 왜 꼭 return 구분 밖에 있어야하는지 궁금합니다. return 이 되어 표출되는 곳이 시작하기 전에 const가 정의 되야 return구분이 실행되면서 해당 const부분이 적용되야함이라고 개인적으로는 이해했으나, 정확히 집고 가야하는 부분이어야 한다고 생각해서 질문드립니다. const구분 이라 위의 부분이 작동해야하며 const라 function 안에 위치해야하는 것인지요... 아주 기본적인 부분일 수 있지만.. 워낙 백지상태로 시작하여 질의 드립니다 ㅠㅠ
-
미해결인터랙티브 개발 실무 끝장내기 [역량 강화편]
자바스크립트 const,var와 script 위치
저의 얕은 기억으로는 .. script위치는 body태그가 끝났을때(?) 적어주는게 가장 좋다고 알고있는데 맞을까요? 또 강의에선 var를 사용해주셧는데 const를 사용해도 별 탈 없더라구요 괜찮나요?
-
미해결풀스택을 위한 탄탄한 프런트엔드 부트캠프 (HTML, CSS, 바닐라 자바스크립트 + ES6) [풀스택 Part2]
안녕하세요 선생님 let , const 질문있습니다
안녕하세요 선생님 강의 너무 잘듣고있습니다. 다름이 아니라 지난 강의에서 와 이번강의를보고 let 과 const 는 블록스코프 할당시 사용하고 const는 상수처럼 한번 초기화되면 재 초기화 할수없다는것도 알겠습니다. 그런데 언제 let 을 쓰고 const 를 써야하는 지 감이오질않습니다 .. 그냥 let으로 코드를 다짜버리면 불이익이나 메모리 측면에서 손해가 있을까요? 죄송스럽지만 언제 let 을쓰고 const 를 써야하는지 예시를 부탁드려도 될까요? 감사합니다 :)