본문 바로가기

Programming

(92)
[C++] 2. const / 메모리 공간 / Reference 참조자 / 함수에서의 참조(Reference in function) 이 포스팅은 윤성우님의 열혈 C++ 프로그래밍 책을 기반으로 작성되었습니다. 먼저 시작 전에 헷갈리거나 중요한 개념을 몇개 잡고 시작해보고자 한다. Const는 어떤 의미를 가지는가? const는 말 그대로 상수화이다. 이렇게 보면 굉장히 쉬운 개념 같지만 쓰임새가 다양하면서 사람들에게 혼란을 주기도 하는데, 다음과 같이 깔끔하게 정리할 수 있다. const int num=10; //num이라는 변수는 10을 값으로 가지며 이를 변경할 수 없다. const int *ptr = # //ptr포인터는 변수 num을 가리키며 이 ptr을 이용해서 가리키는 변수의 값을 변경할 수 없다. int * const ptr = # //ptr포인터는 변수 num을 가리키며 이 ptr이 가리키는 변수를 변경할..
[C++] 1. 이름공간(Namespace), 인라인 함수(Inline function) 이 포스팅은 윤성우님의 열혈 C++ 프로그래밍 책을 기반으로 작성되었습니다. 유튜버 포프님의 영상을 보고 unmanaged 언어의 중요성을 느끼고, 이제부터 학부 초반에 배웠던 객체지향프로그래밍과 데이터구조의 기억을 되살려서 한번 C++을 공부해보고자 한다. 앞으로의 포스팅은 순전히 나를 위한, 내가 모르는 것들을 기반으로 기록하는 형태로 작성될 예정이다. 윤성우님은 C를 안다는 가정하에 C++책을 작성해나가셨고, 나는 C를 본 적이 없지만. 이전에 C++경험이 있고 파이썬을 계속 공부를 했으니 어느정도 괜찮지 않을까라는 믿음에서 출발해본다. Namespace란 무엇일까? A사 B사가 함께 개발 콜라보를 진행한다고 했을 때, 서로 분담을 한 후 만나서 합치려고 보니 함수의 이름이 양쪽이 똑같은 게 많다고..
4. Python _ 내장함수, 외장함수 정리, 스레드 Thread 이 포스팅은 '점프 투 파이썬'을 다시 정독하면서 파이썬의 기초적이지만 매번 찾아보거나 몰랐던 부분을 정리하기 위한 목적으로 작성되었습니다. 내장함수 정리 - print, del, type 처럼 import하지 않고 쓸 수 있는 내장함수들 abs() - 절댓값 all(iterable data) iterable data: 반복가능한 자료형으로, 리스트 튜플 문자열 딕셔너리 집합 등.. - 자료 모두 참이면 True 하나라도 거짓 False any(iterable data) - 하나라도 참이면 True, 모두 거짓이면 False chr() - ASCII 코드값을 문자열로 출력 ex) chr(97) = 'a' ord() - 문자의 ASCII 코드값 반환 dir() - 객체가 가지고 있는 변수나 함수를 보여줌 ..
3. Python _ 모듈, 패키지, 예외처리, 내장함수 _ Module, Packages, try exception 이 포스팅은 '점프 투 파이썬'을 다시 정독하면서 파이썬의 기초적이지만 매번 찾아보거나 몰랐던 부분을 정리하기 위한 목적으로 작성되었습니다. Module 모듈 모듈: 함수나 변수 또는 클래스 들을 모아 놓은 파일로 다른 파이썬 프로그램에서 불러와 사용할 수 있게끔 만들어진 것. import 모듈이름 을 통해서 불러온다. ex) mod1.py를 불러오고 싶으면 import mod1이라고 한 뒤, mod1.sum으로 도트 연산자를 붙여서 사용한다. from 모듈이름 import 모듈함수로 호출도 가능. 이 경우에는 그냥 바로 함수를 사용가능하다. ex) from mod1 import sum 혹은 import *(전부 다) if __name__ == "__main__": 의 의미. 간단히 말해 파일을 직접 실..
2. Python _ 조건문, 반복문, 파일 읽고 쓰기, 클래스 Class, 객체지향프로그래밍 이 포스팅은 점프 투 파이썬을 다시 정독하면서 파이썬의 기초적이지만 매번 찾아보거나 몰랐던 부분을 정리하기 위한 목적으로 작성되었습니다. if/for/while 요즘 파이썬 커뮤니티에서 들여쓰기 할 때, 탭(tap)보다 공백 4개사용을 권장한다. 일단 둘을 혼용해서 쓰면 당연히 안됨. 근데 난 탭이 아직 좋다... 조건문에서 아무 일도 하지 않게 설정하고 싶다면? pass를 쓰면 된다. 수행할 문장이 한 줄이면 그냥 한줄에 적어버려도 됨. ex) if 'money' in pocket: pass else: print('내가 살게') while문에서 while문을 빠져나가고 싶다면 break fore, while문을 빠져나가고 싶진 않은데 처음으로 가게 하려면 continue를 쓴다. print(a, end..
1. Python _ 기본, 자료형 이 포스팅은 점프 투 파이썬을 다시 정독하면서 파이썬의 기초적이지만 매번 찾아보거나 몰랐던 부분을 정리하기 위한 목적으로 작성되었습니다. 파이썬은 C/C++와 결합이 가능하다. 때문에, 파이썬은 접착(Glue)언어라고도 불리며, C나 C++로 만든 프로그램을 파이썬에서 사용할 수 있으며, 파이썬으로 만든 프로그램 역시 C나 C++에서 사용할 수 있다. 예로 Numpy(Numeric Python)은 파이썬의 느리다는 특성을 보완하기 위해 만들어진 수치연산모듈로 C로 작성되었다. 파이썬은 아직 모바일 프로그래밍에는 부족하다. 안드로이드/아이폰 모두.. 8진수와 16진수의 표현 8진수는 0o또는 0O로 시작 ex) a=0o177 16진수는 0x로 시작 ex)0x8ff
8. Animation, interactivity(인터랙티브한 데이터표현)_python Coursera.org 에서 Michigan University의 Applied Data Science with Python의 강의를 토대로 정리한 내용입니다. 이제까지 다뤘던 method와 라이브러리를 활용하여 움직이는 animation이나 사용자들과 상호작용하는 interactive한 데이터표현을 알아보자. 먼저 간단하게 plotting 되는 과정을 animation으로 어떻게 표현할 수 있을 지 히스토그램을 예시로 알아보도록 하자. 코드는 다음과 같다. #이렇게 animation을 import해준다. import matplotlib.animation as animation #크기 100의 랜덤 분포에 대해서 살펴보자. n = 100 x = np.random.randn(n) # create the f..
7. Boxplot, Heatmap _ python Coursera.org 에서 Michigan University의 Applied Data Science with Python의 강의를 토대로 정리한 내용입니다. 이제까지 예전 포스팅에서 열심히 배웠던 pandas를 별로 활용하지 않았는데요, 이제 본격적으로 슬슬 사용해보도록 하죠. 사실 pandas의 DataFrame은 matplotlib에서 매우 유용한 데이터타입이랍니다. normal random gamma distribution을 랜덤하게 생성한 후 데이터프레임에 저장한 후 plotting 해볼게요. 그리고 이 때, boxplot이란 걸 사용할건데요, boxplot은 생소한 분들도 많으시겠지만 뭔가 실험데이터와 관련된 논문이나 자료를 보신 분들은 한번쯤 반드시 보셨을 형식의 데이터표현이랍니다. 바로 ..