![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fck0flJ%2FbtqDCYXOyob%2F5K8uoYek4OvlR05BAaPlDK%2Fimg.png)
[C++] 따라하며 배우는 C++ - (4) 변수 범위와 더 다양한 변수형
2020. 4. 18. 19:15
C++/따라하며 배우는 C++
지역 변수, 범위, 지속 기간 지역 변수 범위(scope): 어디서 사용할 수 있고, 없는가 지속기간(duration): 메모리를 반납 보통 함께 묶어서 생각하는 것이 일반적이나 동적 할당을 할 때는 범위와 지속기간이 분리된다. #include namespace work1 { namespace work11 { namespace work111 { int a = 1; void doSomething() { a += 3; } } } int a = 1; void doSomething() { a += 3; } } //namespace work1::work11::work112 { //컴파일러 17버전부터 가능하나 적게 들어가는 것이 좋다 //} namespace work2{ int a = 1; void doSomet..
![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FTMEis%2FbtqDyE6dFgI%2FtjPEiAdtcrVGi1w0oAnY8K%2Fimg.png)
[C++] 따라하며 배우는 C++ - (3) 연산자들
2020. 4. 16. 22:40
C++/따라하며 배우는 C++
연산자 우선순위와 결합 법칙 연산자 종류 및 우선순위 https://ko.wikipedia.org/wiki/C%EC%99%80_C%2B%2B%EC%9D%98_%EC%97%B0%EC%82%B0%EC%9E%90 C와 C++의 연산자 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 둘러보기로 가기 검색하러 가기 이것은 C와 C++ 프로그래밍 언어의 연산자의 목록이다. 나열된 모든 연산자는 C++에 존재한다. 네번째 열("C에 포함됨")은 해당 연산자가 C에 존재하는지를 표시한다. C는 연산자 오버로딩을 지원하지 않는다. 연산자가 오버로드되지 않았다면, &&, ||, ,(쉼표 연산자) 연산자는 첫 번째 피연산자(operand)가 평가된 시점이 시퀀스 포인트이다. C++는 형 변환 연산자인 ..
사고 싶은 책 및 강의
2020. 4. 15. 16:35
중얼중얼
소프트웨어 장인 - 산드로 만쿠소 https://www.aladin.co.kr/shop/wproduct.aspx?ItemId=66925855 소프트웨어 장인 소프트웨어 장인에 대한 이야기. 프로그래머와 프로그래밍 관련 팀 또는 조직에 도움이 될만한 이야기를 풀어 놓았다. 생산성이 높은 프로페셔널, 자신의 일에 자부심을 갖는 프로페셔널로 도약하기 위해 필요한 계... www.aladin.co.kr C++ 최적화 - 커트 건서로스 https://www.aladin.co.kr/shop/wproduct.aspx?ItemId=195439191 C++ 최적화 올바른 코드를 구현하면서도 빠른 C++ 프로그램을 만드는 최적화 방법을 소개한다. C++은 자동화와 표현력부터 성능을 향상시키는 세밀한 제어까지, 다양한 옵션..
![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcaQKZY%2FbtqDohq5RmQ%2Fg3Yp2koztXGCyPKH0UJie0%2Fimg.png)
[C++] 따라하며 배우는 C++ - (2) 변수와 기본적인 자료형
2020. 4. 14. 23:37
C++/따라하며 배우는 C++
기본 자료형 소개 Fundamental Data Types 자료형: 자료의 형태 int i = 1; -> 초기화, 객체지향으로 넘어가면 매우 중요하다. 정수, 실수, 문자, 불리언 등 여러가지 자료형이 있고, 메모리에 저장된다. 각 자료형마다 사이즈가 다르다. 저장 방식도 타입마다 조금씩 다르다. 문장을 저장하려면 String을 사용한다. 기본 데이터 타입은 아니나, 표준처럼 사용되는 경향이 있다. 음수가 가능한 타입은 signed, 가능하지 않은 타입은 unsigned. unsigned의 처리 속도가 더 빠른 경우가 있다. 컴파일러에 따라서 사이즈가 달라질 수 있다. 정해진 메모리에 담을 수 있는 사이즈만 담을 수 있다. 최근에는 사용하기 직전에 변수를 선언하는 것을 선호한다. 1. 디버깅 편리 2. ..
![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcfveGM%2FbtqDlNDW1YW%2FKYtmgyehvWVEUZBNKolc9K%2Fimg.png)
[C++] 따라하며 배우는 C++ - (1) C++의 기본적인 사용법 ③
2020. 4. 13. 18:53
C++/따라하며 배우는 C++
연산자와의 첫 만남 리터럴(Literal) 피연산자(Operand) 단항(unary), 이항(binary), 삼항(ternary) #include using namespace std; int main() { int x = 2;// x is a variable, 2 is a literal. / assignment: = cout
![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F8XwRd%2FbtqDogjWw1r%2Foksya4miVDrwm1MHpw9iMk%2Fimg.png)
[C++] 따라하며 배우는 C++ - (1) C++의 기본적인 사용법 ②
2020. 4. 12. 22:14
C++/따라하며 배우는 C++
변수와의 첫 만남 객체(objects): 메모리에 저장이 돼 있는 정보가 객체로써 존재함 변수(variables): 수학에서 얘기하는 변수처럼 기능하나, 내부적으로 작동할 때는 메모리에 담겨 있는 객체의 이름 Left-values / Right-values: 메모리 변수에 직접 접근할 수 있느냐 초기화(initialization)와 대입(assignment) 초기화를 안 했을 때의 문제점 #include int main() { int x;// X: 메모리에 있는 어떠한 공간의 이름, 정수 하나 담을 크기(integer) x = 123;// =: assignment operator, '대입' x = x + 2;// 우측의 x는 R-value std::cout
![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fby5wH1%2FbtqDky7vdSI%2FT8gV83MPU8KkbmJMtTCSM1%2Fimg.png)
[C++] 따라하며 배우는 C++ - (1) C++의 기본적인 사용법 ①
2020. 4. 11. 23:43
C++/따라하며 배우는 C++
프로그램의 구조 (표현)식 - Expressions 명령문 - Statements 함수 - Functions 라이브러리, 표준 라이브러리 OS는 프로그램을 실행할 때 먼저 main function을 찾는다. 빈칸이나 빈 줄은 컴파일러가 무시한다! 프로그래머의 편의를 위한 것이다. 기능을 수행하는 문장을 Statement, return 0;는 return 기능을 하고 있기 때문에 return statement라고 부른다. 명령문의 마지막에 세미콜론(;)을 반드시 쓴다. #include /* preprocessor directive #: 전처리기 iostream: input output stream */ int main(void) { (1 + 2) * (3 + 4);// expression int x = 2..
블로그의 방향성에 대한 고찰과 잡담
2020. 4. 10. 01:47
중얼중얼
지금까지 책과 강의를 들으면서 메모한 내용을 바탕으로 포스팅을 해 왔는데, 문득 제작자분들께 피해가 가지 않을까 싶은 생각이 든다. 내가 일부러 그러려고 한 건 아니었지만, 어쩌다 보니 핵심만 쏙쏙 가져와서 공개하는 꼴이 돼 버려서... 😥 무슨 일이 있었던 건 아니지만, 내 저작물이 중요한 만큼 남의 저작물 또한 중요한 것이기 때문에 블로그 포스팅에 있어 조금 더 신중해지려고 한다. 1 우선 무료로 배포되어 있지 않은 자료와 관련된 글들은 보호 처리를 해 놓았다. (최근에 업로드한 글은 내용 수정을 완료한 상태다.) 지금은 C++에 집중하고 싶은 상황이라 당장 포스팅을 이어가지도 않을 거고... 나중에 복습하면서 수정하고, 재공개해도 되지 않을까 싶다. 해당 시리즈 글 자체를 많이 올려 놓은 상태라서 ..
![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc7Nb5U%2FbtqDljU5IfW%2F5eh9EMDLZkI7k8d3w0il50%2Fimg.png)
[C++] 따라하며 배우는 C++ - (0-4) 통합개발환경의 기본적인 사용법
2020. 4. 10. 00:24
C++/따라하며 배우는 C++
윈도우 비주얼 스튜디오 설치 비주얼 스튜디오 2017 다운로드 - https://visualstudio.microsoft.com/ko/vs/older-downloads/ Visual Studio 이전 다운로드 - 2017, 2015 및 이전 버전 Visual Studio Community, Professional 및 Enterprise 소프트웨어의 이전 버전을 다운로드하세요. 여기서 Visual Studio(MSDN) 구독에 로그인하세요. visualstudio.microsoft.com 설치 시 C++를 사용한 데스크톱 개발(Desktop development with C++)을 체크하여 필수로 설치해야 한다. Hello, World! Create directory for solution: 한 프로젝트 ..
![thumbnail](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FxNruX%2FbtqDfCP2mDB%2F56iN10Gekz98Dhv4gcL8J0%2Fimg.png)
[취업] 개발자 취업 입문 개론
2020. 4. 8. 23:07
게임 관련/특강
내가 개발을 시작하려는 이유 내가 개발을 시작하려는 이유 프레임워크(Framework): 서비스를 쉽게 만들 수 있게끔 도와줌, 서버와의 통신 등을 쉽게 구현할 수 있도록 하는 툴 (Spring, React, django 등) 실제 서비스를 만들기 위해 언어와 프레임워크를 공부해야 하며, 프레임워크를 더 많이 파고들어야 한다. 소프트웨어 장인 https://www.aladin.co.kr/shop/wproduct.aspx?ItemId=66925855 소프트웨어 장인 소프트웨어 장인에 대한 이야기. 프로그래머와 프로그래밍 관련 팀 또는 조직에 도움이 될만한 이야기를 풀어 놓았다. 생산성이 높은 프로페셔널, 자신의 일에 자부심을 갖는 프로페셔널로 도약하기 위해 필요한 계... www.aladin.co.kr 생..
[C++] 따라하며 배우는 C++ - (0-3) 프로그래밍 과정 소개
2020. 3. 27. 20:16
C++/따라하며 배우는 C++
프로그래밍 과정 1. 풀어야 할 문제를 정의한다. - 무엇을 만들고 싶은지, 세부 기능이 어떻게 되는지 정리 2. 해법을 설계한다. - 어떻게 만들 것인지 계획을 꼼꼼하게 단계별로 세움 3. 해법을 구현하는 프로그램을 작성(Write)한다. - 생각한 대로 프로그램을 작성함, '코드를 Write한다' 4. 프로그램을 컴파일(Compile)한다. - 소스파일(.cpp) > 컴파일 > 오브젝트 파일(.o, .obj) 5. 오브젝트(Object) 파일들을 링킹(Linking)한다. - 다양한 오브젝트 파일을 합쳐서(링커) 실행 파일 생성 6. 테스트해 보고 문제가 있으면 고친다. - 디버깅(Debugging) ※ 런타임 서포트(Runtime Support): 모든 일을 전부 직접 소스 코드에서 짤 필요가 없다..
[C++] 따라하며 배우는 C++ - (0-2) C, C++ 언어 소개
2020. 3. 26. 22:01
C++/따라하며 배우는 C++
C/C++ 1970년대 초반에 만들어진 C언어. C++는 70년대 후반, C를 사용하다가 기능이 확장된 개념이다. "객체지향"이라는 개념이 추가되었다. C/C++ 언어의 설계 철학 "프로그래머를 믿어라." 실제 세계에서 쓸모가 있어야 한다. 프로그래머가 스스로 스타일을 선택할 수 있어야 한다. (자유와 다양성) 유용한 기능을 추가하는 것이 오용보다 더 중요하다. (잘못 사용하는 것보다 쓸모있는 기능을 중시함) 프로그래머의 의도를 알 수 없다면 스스로 명시하게 한다. (다른 언어들의 경우, 명확하지 않아도 작동되는 경우가 있음) C++ 아래에 다른 언어가 없다. (어셈블리어는 예외) 해당 포스트는 '홍정모의 따라하며 배우는 C++' 강의를 수강하며 개인 백업용으로 메모하였습니다. 인프런: https://w..
[C++] 따라하며 배우는 C++ - (0-1) 프로그래밍 언어란
2020. 3. 25. 21:22
C++/따라하며 배우는 C++
프로그래밍 언어? 프로그램은 컴퓨터가 원하는 기능을 수행하게끔 만든다. 일상생활의 언어와 프로그래밍 언어는 사고 방식 자체가 다르다. (계산적 사고, 컴퓨팅 사고) C, C++를 공부하다 보면 자동적으로 습득되는 경향이 있다. 따로 공부해도 좋음! 애플리케이션도 프로그램이다. 문맥에 따라 사용이 다르다. 소프트웨어는 하드웨어와 비교되는 경우 사용한다. 기계어(Machine Language) 컴퓨터도 기계(Machine)라고 부른다. 전압의 차이(HIGH, LOW)로 신호를 인식한다. 실제로 프로그래밍할 때는 기계어를 거의 사용하지 않는다. 어셈블리 언어(Assembly Language) 주로 CPU가 하는 단위 기능들을 직접 수행하거나, 메모리에 있는 정보를 옮기고 등등... 직접적으로 제어할 수 있는 ..
[C++] 따라하며 배우는 C++ - (0-0) C++ 꼭 공부해야 할까?
2020. 3. 24. 19:34
C++/따라하며 배우는 C++
C++ 꼭 공부해야 할까? C++은 고전적인 언어지만 반드시 공부를 해야 한다. '기본'이 중요하다. 힘든 구간을 견딜 자신이 없다. => 베끼는 것으로 시작하면 좋은 프로그래머가 될 수 있고, 그 이후 위대한 프로그래머로 발전해 나가면 된다. 0. 올바른 타이핑 방법을 연습한다. 1. 간단한 개념을 이해한다. - 압박감 느끼지 말기, 머릿속에서 '완벽하진 않지만 배운 것 같다'로 충분 2. 예제를 따라 해 본다. - 타이핑하며 코드를 쳐 보고, 실행이 되는가를 확인 3. 문제가 생기면 해결한다. - 문제 해결 과정이 핵심! 발전하고 있다는 증거 4. 예제를 내 맘대로 바꿔 본다. - 호기심이 들 때 바로 해 보기 C++ 감을 잡으면, 다른 언어 간단하게 배워서 바로 핵심을 다룰 수 있다. 장기적으로 좋..
요즘
2020. 3. 14. 19:22
중얼중얼
어제 포트폴리오 작업을 들어가려고 이것저것 세팅해 놓고 애셋 구매하고 했는데... 자꾸만 추가한 C++ 클래스가 콘텐츠 브라우저에 인식이 안 돼서 ㅋㅋㅋㅋㅋ 빌드 다시 하려고 폴더들 지우니까 도중에 뭐시깽이를 컴파일 할 수가 없다나 뭐라나 🙄 그래서 한 여섯 시간은 날린 것 같다... ^^... 미리 세팅해 놓고 배우는 거 바로바로 복습하면서 적용해 보려고 했는데... 의욕이 안 난다... 오늘도 했는데 또 그러면 어떡하나 싶음🤔 그리고 코로나 아니었어도 집에 있었겠지만 ㅋㅋㅋㅋ 집에서 할 게 없어서 매일 공부하고 있긴 한데 자꾸만 불안해진다 내가 잘하고 있는 게 맞는 건지😥 새로운 자극이 필요해서 알고리즘 문제나 좀 풀면서 할까 싶기도 하고 ㅠㅠ 모르겠다!!!!!!!