본문 바로가기
반응형

전체 글108

일제강점기를 부정적으로만 볼 수 있는가? https://weekly.khan.co.kr/khnm.html?mode=view&code=113&art_id=202409020600021 “조선인은 일본인? 시대적 맥락 도외시한 주장은 맞지 않다”“일제강점기 우리 선조들의 국적은 어디인가.” 누군가에게는 복잡하지만, 또 다른 누군가에게는 단순한 질문이다. 이 문제를 복잡하게 고민해야 하는 것은 역사 및 국제법 등의 학...weekly.khan.co.kr이 글은 주간경향을 읽고 작성한 칼럼입니다.  일제강점기 시기 "조선인 = 일본인" 논점에 대해일제강점기 당시 조선인을 일본인으로 간주하는 주장은 타당하지 않다. 국가와 민족은 동일선상에 놓을 수 없는 개념이기 때문이다. 예를 들어 이스라엘과 팔레스타인의 분쟁을 살펴보면, 이스라엘 국경 내에 이스라엘과 .. 2024. 9. 11.
[python] Matplotlib 그래프 시각화 한글 깨짐 및 마이너스 깨짐 해결방법 Matplotlib 그래프 한글 깨짐 해결방법Matplotlib에서 그래프를 시각화 하다보면 아래와 같이 한국어가 깨질때가 있습니다.그럴때 아래와 같이 코드를 입력하시면 한글 깨짐이 해결됩니다.import matplotlib.font_manager as fmfont_path = 'C:/Windows/Fonts/malgun.ttf' # 맑은 고딕 폰트 경로fontprop = fm.FontProperties(fname=font_path, size=12)plt.rc('font', family=fontprop.get_name())더보기한글 깨짐 코드import matplotlib.pyplot as plt# 데이터 준비data = { "미국": [15, 43, 75, 100, 124, 95, 130, 14.. 2024. 7. 4.
7월 수소 관련주 급락: 미국 대선토론의 영향? 전망은? 7월 들어 수소 관련주가 급락하면서 투자자들의 이목이 집중되고 있습니다. 주요 수소 관련주들로는 두산퓨얼셀, 범한 퓨얼셀, 에스퓨얼셀, 상아프론테크 이렇게 있습니다. 이에 각각 두산퓨얼셀(-2.6%), 범한퓨얼셀(-3.6%),에스퓨얼셀(-3.62%), 특히 상아프론테크의 경우 (-8.29%) 급락하였습니다. 이러한 현상의 주요 원인 중 하나로 지목되는 것이 바로 6월 27일 조지아주에서 열린 미국 대선 토론입니다. 이번 글에서는 미국 대선토런이 어떻게 수소 관련주에 영향을 미쳤는지 분석해보겠습니다.  1. 도널드 트럼프와 조 바이든  경제 정책 비교세금트럼프 기업과 개인의 세금을 감면하여 경제 성장을 촉진하고 일자리 창출 감세정책바이든고소득층과 대기업에 대한 세금 인상 및 부의 불평등 해소 공정한 세금 .. 2024. 7. 3.
[C++] 객체지향(상속) 타입 캐스팅(Type casting) + 퀴즈문제 암시적 유형 변환(Upcasting) 파생(자식) 클래스 객체의 경우 기본(부모) 클래스 객체를 가리킬 수 있습니다. 파생(자식) 클래스 객체는 암시적(implicitly) 으로 기본(부모) 클래스 객체로 변환될 수 있습니다. 이것을 Upcasting이라고 합니다. 아래는 Upcasting 예시코드입니다. 일단은 결과값에 상관하지말고 봐주시면 감사하겠습니다. #include #include #include class Car{ public: Car(std::string name) : name_(name){} const std::string& name() const {return name_;} private: std::string name_; }; class Bus : public Car{ public: B.. 2023. 10. 31.
[C++] static에 대하여 Static 변수 static 변수는 프로그램 수명 동안 할당됩니다. call by value에서 보면 값을 호출하고 나서 값이 초기화되는데 static을 사용할 경우 값이 유지가 됩니다. 아래에 static을 사용했을 때와 안했을 때를 비교헤보겠습니다. static 변수를 선언했을 때 #include #include #include void foo(){ static int count = 0; std::cout 2023. 10. 30.
[C++] 함수 오버로딩(Function overloading) 함수 오버로딩(Function overloading) 같은 이름의 함수를 여러 개 사용할 수 있습니다. 예를 들어 아래의 코드와 같이 나타낼 수 있습니다. int foo(int x); //OK int foo(int x, int y); //OK int foo(char x); //OK void foo(double x); //OK void foo(int x); //ERROR! 위의 코드와 같이 같은 함수명으로 여러 가지를 선언할 수 있습니다. 하지만 마지막 foo의 경우 에러가 발생합니다. 그 이유는 맨 위에 이미 매개변수가 int인 foo를 받았기 때문입니다. 만약 foo(5)를 입력했을 때 컴파일러 입장에서 첫 번째를 말하는 건지 마지막을 말하는 건지 구분을 못합니다. 컴파일 과정에서 타겟 함수를 정한다... 2023. 10. 29.
[C++] 얕은 복사(Shallow copy) VS 깊은 복사(Deep copy) 얕은 복사 (Shallow copy) 얕은 복사의 경우 데이터의 주소를 복사하는 것입니다. 다음 아래 그림을 보면 이해하기 쉽습니다. x = y를 통해 y의 주소값을 x에 넣습니다. 그렇기 때문에 *y의 값이 변하면 마찬가지로 *x의 값이 *y와 같게 변합니다. 깊은 복사 (Deep copy) 깊은 복사의 경우 데이터 값을 완전히 복사하는 것을 말합니다. 그렇기 때문에 복사된 값과 이전의 값은 완전히 독립적으로 됩니다. 얕은 복사 예시코드 다음은 얕은 복사에 관한 예시코드입니다. #include #include #include class Car{ //class declaration public: //members accessible from outside Car(char* name){ //default .. 2023. 10. 29.
[C++] call by value/ call by pointer/ call by reference 함수 인자를 전달하는 방법 함수 인자를 전달하는 방법은 3가지가 존재합니다. - call by value (인수값을 복사하고 복사본을 전달합니다.) - call by pointer (인자의 주소를 전달합니다.) - call by reference ( 인자의 참조를 전달합니다.) Call by value 기본적으로 call by value는 인수값을 복사하고 복사본을 전달합니다. 호출자의 값은 호출 수신자의 변경사항에 반영되지 않습니다. 암시적(implicitly)으로 인수의 복사 생성자를 호출합니다. 다음 아래의 예시코드를 보겠습니다. #include void Add3(int y){ y +=3; } int main(){ int x = 1; std::cout 2023. 10. 28.
[C++] LHS변수와 RHS변수/const 활용(pointer const etc..) LHS와 RHS LHS는 left-hand-side 표현입니다. RHS는 right-hand-side 표현입니다. 예를 들어 x = 10이라고 할 때 LHS : x RHS : 10 이렇게 됩니다. C++ 메모리 모델안 basic 각각의 변수는 주소를 가집니다. &x (only in RHS) : 변수 x의 주소를 리턴합니다. &x : 0 &y : 4 x (in RHS) : 변수의 주소안 값을 할당합니다. x는 16을 리턴합니다. y는 99를 리턴합니다. x (in LHS) : RHS 값을 변수의 주소에 저장합니다. "x = 7" x주소 0에 7이 저장됩니다. "y = 88" y주소 4에 88이 저장됩니다. 위를 표시하면 다음 아래와 같이 됩니다. 포인터 (Pointers) 포인터 값은 주소를 가리킵니다. .. 2023. 10. 28.
[C++] 네임스페이스(Namespace)를 사용하는 이유 네임스페이스(Namespace) 네임스페이스는 특정한 식별자(함수, 변수, 클래스)를 포함하는 코드지역을 뜻합니다. C++에서는 같은 식별자를 여러 번 선언/정의할 수 없습니다. 그렇지만 우리가 식별자를 여러번 사용하고 싶을 때가 있는데요. 네임스페이스는 식별자를 여러번 선언/정의하는 것을 허용합니다. 네임스페이스는 특정한 식별자를 가져야 합니다. 하지만, 식별자는 네임스페이스 전체에서 동일한 이름을 가질 수 있습니다. ★ main 함수는 네임스페이스가 될 수 없습니다. ★ 아래 예시코드를 보면서 더 구체적으로 설명하겠습니다. 예시코드 #include namespace ns1{ int value = 3; } namespace ns2{ std::string value("Hello World"); } int.. 2023. 10. 28.
728x90
반응형