홍정모의 따라하며 배우는 C++

홍정모의 따라하며 배우는 C++

(112개의 수강평)

2436명의 수강생
C++
월25,666원
77,000원
3개월 할부시
지식공유자 · PP TREE
201회 수업· 총 48시간 27분수업
평생 무제한 시청
수료증 발급 강의
수강 난이도 초급
CODE_H 프로필

v.push_back(std::move(str)); CODE_H 9시간 전
string str = "Hello"; 13:09 v.push_back(std::move(str)); 해준게 str의 주소 값을 넘겨준게 맞나요?

1
Roy Paik 프로필

‘unitptr_t’ was not declared in this scope Roy Paik 2일 전
안녕하세요, 2.1강의의 예시코드를 작성했는데 이러한 에러가 뜹니다. 리눅스 사용중입니다. 인터넷찾아봤는데 어떻게 해결하는지 잘 모르겠습니다.

1
TaeChoon Pakr 프로필

2:58초 질문 TaeChoon Pakr 3일 전
결과를보면 constructor 0 constructor 1 destroyer 1 destroyer 0 이렇게 되는데 이는 곧 s2가s1보다 먼저 사라진다는걸 의미합니다. s2가 s1보다 먼저사라지는건 s1과 s2는 스택영역에 저장되는(쌓이는) 것과 관련있나요?

1
pokor2 프로필

s_value 초기화하는 부분이 이상한것 같습니다. pokor2 13일 전
s_value는 클래스 내부에서 private로 선언되어 있는데 어떻게 외부에서 접근해서 초기화를 해줄 수 있는 건가요?  setValue 등으로 접근이 가능하다고 하면 이해는 하겠는데 헷깔립니다.

1
pokor2 프로필

Static이 클래스 내에서 초기화 되지 않는 이유가 뭔가요? pokor2 13일 전
C#에서은 클래스 내부에서 static 사용시 초기화가 가능한데 C++은 초기화가 되지 않도록 막은 이유가 있을까요?

1
TaeChoon Pakr 프로필

13:00 숫자입력받고 문자열 입력받기 TaeChoon Pakr 14일 전
안녕하세요 1. 13:00경에 숫자입력받고 문자열은입력받을때 아래코드로 실행을하면 cout<<Your age?<<endl; int age; cin>>age; cout<<Your name?<<endl; string name; std::getline(std::cin ,name); cout<<name<<" " << age << endl; Your age? 에 1 엔터 를 하면 Your name? 1이 출력되고 끝납니다. 왜이러는건가요? 1엔터를 치는순간 1과 엔터가 콘솔입력버퍼로 들어가고 1은 cin>>age 에따라 age에 들어가서 버퍼는 엔터말고는 비어버리니까std::getline(std::cin ,name); 에 의해 추가로버퍼로의 문자열 입력이 필요하므로 콘솔창 추가입력이 있어야 콘솔->버퍼-> name 으로의 입력이 최종적으로 끝나고 출력단계로 넘어가야 하는것 아닌가요?  2.위의 오류는 정수입력을 종료하고나서(cin>>age 아랫줄에) std::cin.ignore(32767,'₩n') 을 입력하면 해결되는데 std::cin.ignore(32767,'₩n') 은 구체적으로 무슨역할을 하는건가요?

2
TaeChoon Pakr 프로필

3.9강 비트마스크/비트플래그 연습문제 해답 TaeChoon Pakr 15일 전
강의와 관련있는 질문을 남겨주세요.• 강의와 관련이 없는 질문은 지식공유자가 답변하지 않을 수 있습니다. (사적 상담, 컨설팅, 과제 풀이 등)• 질문을 남기기 전, 비슷한 내용을 질문한 수강생이 있는지 먼저 검색을 해주세요. (중복 질문을 자제해주세요.)• 서비스 운영 관련 질문은 인프런 우측 하단 ‘문의하기’를 이용해주세요. (영상 재생 문제, 사이트 버그, 강의 환불 등) 질문 전달에도 요령이 필요합니다.• 지식공유자가 질문을 좀 더 쉽게 확인할 수 있게 도와주세요.• 강의실 페이지(/lecture) 에서 '질문하기'를 이용해주시면 질문과 연관된 수업 영상 제목이 함께 등록됩니다.• 강의 대시보드에서 질문을 남길 경우, 관련 섹션 및 수업 제목을 기재해주세요. • 수업 특정 구간에 대한 질문은 꼭 영상 타임코드를 남겨주세요! 구체적인 질문일수록 명확한 답을 받을 수 있어요.• 질문 제목은 핵심 키워드를 포함해 간결하게 적어주세요.• 질문 내용은 자세하게 적어주시되, 지식공유자가 답변할 수 있도록 구체적으로 남겨주세요.• 정확한 질문 내용과 함께 코드를 적어주시거나, 캡쳐 이미지를 첨부하면 더욱 좋습니다. 기본적인 예의를 지켜주세요.• 정중한 의견 및 문의 제시, 감사 인사 등의 커뮤니케이션은 더 나은 강의를 위한 기틀이 됩니다. • 질문이 있을 때에는 강의를 만든 지식공유자에 대한 기본적인 예의를 꼭 지켜주세요. • 반말, 욕설, 과격한 표현 등 지식공유자를 불쾌하게 할 수 있는 내용은 스팸 처리 등 제재를 가할 수 있습니다.  ------------------- 강의종료후에 마지막에 들어주신 예제 2문제에 대한 해답입니다. 여유되면 맞는지 확인부탁드립니다! 1.  #기사를 봤을때 my_articles_flag |= option_viewed; #기사의 좋아요를 클릭했을때 my_articles_flag |= option_liked; #기사의 좋아요를 다시클릭했을때 if(my_article_flags & option_liked) { my_articles_flag ^=option_liked;} (이중클릭시 좋아요를 취소하는 개념으로 구현했습니다.) #본기사만 삭제할때 if(my_article_flags & option_viewed) {my_article_flags|=option_deleted;} 2.드모르간의 법칙

1
anais3863 프로필

[9.5] postfix operator overloading 실행시 쓰레기값 출력 문제 anais3863 21일 전
작성한 코드는 아래와 같으며,  첨부한 콘솔창 이미지파일에서 보이는 것처럼 postfix operator overloading 실행 시 그 결과에 쓰레기값이 출력됩니다.  제 생각에는  Digit class 내부의 Digit& operator ++ (int) 함수 내부의 ++(*this); 에서, this가 제대로된 참조를 하지 못해서 그런 것 같다고 생각합니다. 정확한 원인과 해결방법을 알려주시기를 부탁드립니다. // 증감 연산자 오버로딩 #include <iostream> using namespace std; class Digit { private: int m_digit; public: Digit(int digit=0):m_digit(digit){} // prefix Digit& operator ++ () { ++m_digit; return *this; } // postfix needs dummy Digit& operator ++ (int) { Digit temp(m_digit); ++(*this); return temp; } friend ostream& operator << (ostream& out, const Digit& d) { out << d.m_digit; return out; } }; int main() { Digit d(5); cout << ++d << endl; cout << d << endl; cout << d++ << endl; cout << d << endl; return 0; }

3
CODE_H 프로필

ostream 질문 CODE_H 21일 전
//class friend std::ostream& operator << (std::ostream & out, const Point &point) {    out << m_x <<" " << m_y << " " << m_z; } //main cout << p1 ; -------------- 여기서 보면 friend std::ostream& operator << (std::ostream & out, const Point &point) 에 매게변수가 2개 들어오는데  main은  Point p1으로 매게변수2(const Point &point)만 전달받는 것 같은데, 매게변수1(std::ostream & out)에는 어떤 값을 전달 받는 것인가요??

1
CODE_H 프로필

연산자 질문 CODE_H 21일 전
연산자 오버로딩에 관해서 궁금한 게 있습니다. Cents operator + (매개변수) {     return  ; } -------------------- 위의 구조가 반환 자료형 operator + ☜ 함수명 (매개변수) {    return ; } ----------- 이 맞나요? ======================= operator int() {    return m_cents;   } -------------------------- 이 구조는 operator 반환 자료형() { return m_cents; } --------- 이 맞나요? 형변환에는 "+" 함수 명이 없는데 어떻게 호출하는지 알 수있나요?? 그리고 operator 는 const 같이 특별한 기능을 수행하는 명령어 인가요 ?

1
원성준 프로필

질문드립니다 원성준 22일 전
안녕하세요. c++아예 모르고 이 강의를 기초 강의로 생각해서 수강하고 있는데 쉽지 않네요..ㅠㅠ class에 대한 설명은 아직 안해주셨는데 왜 class를 하면 enum이라는 사용자가 설정한 자료형끼리 비교가 안되게 구분이 되는지 이런거 이해하기가 어렵네요.. 그래서 그냥 뒤에서 다시 배우겠지 하고 넘어갔는데 뒤쪽 스위치문 배울때도 다시 enum class 가 나와서 그것도 그냥 넘어가려합니다. 이렇게 하나씩 이해 못하고 넘어가니 c++이 어렵다는 생각만 생기고 따라가기 버겁네요..ㅠㅠ 뒤에 강의들 수강하면 이해 되겠죠..?

1
상욱 프로필

질문있습니다. 상욱 24일 전
9:00 int x = 0; int y = 1; if ((!x) == y) { cout  << " x does not equal y" << endl; } else         cout  << " x equals y" << endl; 위 식에서 if는 x,y 중 하나만 false의 값을 가졌을때 true가 되며 나머지는 항상 false입니다.  0이 아니면 true인데 y가 2 이상이 되면 false가 됩니다. 왜이런가요?

6
neue zeal 프로필

[05:03] c++ 17 , x64 에서 컴파일 됩니다. neue zeal 25일 전
안녕하세요? [05:03] c++ 17 , x64 에서 컴파일 됩니다. 감사합니다.

0
kohy741 프로필

insert kohy741 26일 전
만약에 map.insert({'d',10}) 이거랑 map.insert(std::pair('d',10)) 이거랑 차이가 뭔가요??

1
mmq mmq 프로필

11:49 경에 mmq mmq 1달 전
안녕하세요. 강의 잘 듣고 있습니다. 11:49 경에 int (Something:: * fptr1)() = &Something::temp; cout << (s1.*fptr1)() << endl; 로 펑션 포인터를 선언하고 출력하였는데, int (*fptr2)() = &Something::getValue; cout << fptr2() << endl; 에서는 펑션포인터를 출력할때 왜 *를 붙이지 않는지 궁금합니다. getValue 함수가 static이라 인스턴스에 상관없이 호출할 수 있는것은 알겠는데 temp함수의 펑션 포인터를 출력할때와 getValue함수의 펑션 포인터를 출력할 때에 *의 유무의 차이가 궁금하네요.

5
지식공유자 되기
많은 사람들에게 배움의 기회를 주고,
경제적 보상을 받아보세요.
지식공유참여
기업 교육을 위한 인프런
“인프런 비즈니스” 를 통해 모든 팀원이 인프런의 강의들을
자유롭게 학습하는 환경을 제공하세요.
인프런 비즈니스