반응형

Language/C++ 9

[C++] STL (Standard Template Library) 2편 - iterator와 algorithm

2024.01.23 - [Language/C++] - [C++] STL (Standard Template Library) 1편 - Container [C++] STL (Standard Template Library) 1편 - Container 저번에 포스팅 한 Template는 Generic Programing을 위한 C++의 문법이었다. 2024.01.23 - [Language/C++] - [C++] Template(템플릿) [C++] Template(템플릿) # Generic Programming 기존에 공부했던 JAVA에서는 제네릭 문법이 잇었 blaj2938.tistory.com 1편에서는 자료구조와 관련된 컨테이너라고 부르는 STL을 살펴보았다. 자바의 리스트나 맵이나 우리가 하는 자료구조형을 ..

Language/C++ 2024.01.24

[C++] STL (Standard Template Library) 1편 - Container

저번에 포스팅 한 Template는 Generic Programing을 위한 C++의 문법이었다. 2024.01.23 - [Language/C++] - [C++] Template(템플릿) [C++] Template(템플릿) # Generic Programming 기존에 공부했던 JAVA에서는 제네릭 문법이 잇었다. 2022.01.10 - [Language/Java] - [JAVA] 제네릭(Generic) [JAVA] 제네릭(Generic) 제네릭이란 데이터의 타입을 일반화 한다 제네릭은 클래스나 blaj2938.tistory.com Generic은 일반이라는 말이다. 우리가 평상시에 일반화 하면 안된다고 하지만 Generic 프로그래밍의 장점은 중복 코드를 줄일 수 있다는 것이다. 생각해보면 다 똑같이 ..

Language/C++ 2024.01.23

[C++] Template(템플릿)

# Generic Programming 기존에 공부했던 JAVA에서는 제네릭 문법이 잇었다. 2022.01.10 - [Language/Java] - [JAVA] 제네릭(Generic) [JAVA] 제네릭(Generic) 제네릭이란 데이터의 타입을 일반화 한다 제네릭은 클래스나 메소드에서 사용할 내부 데이터 타입을 컴파일 시에 미리 지정하는 방법 클래스나 메소드 내부에서 사용되는 객체의 타입 안정성 blaj2938.tistory.com 여기서 말하는 Generic은 Generic Programming에서 나온 것이다. 그 정의가 무엇이냐면, 프로그래밍 언어에서 타입에 구애 받지 않고 재사용이 가능한 코드를 작성하는 이론을 이야기 하는 것이다. C++ 들어가기전 친숙한 JAVA의 Generic이 어떤건지 보..

Language/C++ 2024.01.23

[C++] Class & 접근제어지시어

# Class(클래스)란? class는 OOP에서 특정 Object를 생성하기 위해서 변수와 메소드를 정의하는 일종의 틀이라고 할 수 있다. 객체를 정의하기 위한 메소드와 변수로 구성된다. Method(메소드) : OOP에서 객체와 관련된 서브틴이자 클래스가 갖고 있는 function이다. 데이터와 멤버변수에 대한 접근 권한을 갖고 있다. Variable(변수) : 데이터의 위치를 저장하는 역할을 한다. 일종의 틀, 즉 템플릿을 사용하면 Object를 분류할 떄 멤버의 자료형을 미리 정하지 않고 객체를 사용할 때 결정할 수 있게된다. C++에서 클래스는 구조체의 상위 호환이라고 할 수있게된다. 구조체에 대한 이해는 아래 글을 참고하면 된다. 2024.01.19 - [Language/C++] - [C++]..

Language/C++ 2024.01.22

[C++] Structure Type(구조체)

# 구조체란? 구조체(Structure Type)은 C++의 기본적인 타입(int, char, double 등등)들을 통해서 새롭게 정의를 할 수 있는 사용자 정의 타입이다. 개인적인 생각인데 해당 발상은 타입별로 자료형을 따로 선언해야한다는 단점을 극복하고 묶음의 단위로 사용하기 위함이 아닐까 싶다. 그 비슷한게 Class(클래스)가 있다. 글을 쓰면서 객체 VS. 구조체에 대해서 알아보겠다. 이하 비슷하게도 배열(Array)가 있지만 우리가 Array를 선언할때와 구조체를 선언할때를 보면 차이점을 명확하게 알 수있다. char c[10]; //배열 //구조체 struct st{ char[10] c; int n; double d; }; 위처럼 배열은 한가지 타임으로만 만들수 밖에 없다. 문자형이면 문자..

Language/C++ 2024.01.19

[C++] Pointer(포인터)

# Address Value의 이해 데이터의 주소값이란 해당 데이터의 저장된 메모리의 시작 주소를 의미합니다. 여기서 궁금한 점이 있을 수 있다. 메모리는 물리 메모리를 이야기하는 것이 아닌 CPU가 바라보는 논리주소, 즉 가상 주소를 의미한다. 가상 메모리리 관련해서는 아래 포스팅을 첨부한다. 2024.01.15 - [Computer Science/Operation System] - [OS] Virtual Memory와 Paging기법 [OS] Virtual Memory와 Paging기법 2024.01.12 - [Computer Science/Operation System] - [OS] 메모리 관리 전략 & Paging / Segmentaion 기법 [OS] 메모리 관리 전략 & Paging / Seg..

Language/C++ 2024.01.18

[C++] Assignment 주소록(1) - 요구사항 분석

사실 기본적인 자바를 통해 컴퓨터 언어가 어떤식으로 동작하는지는 알고 있어서 이전에 작성한 내용인 C++ 동작원리만 하고 나머지 문법은 과제를 통해서 진행하려고한다. 2024.01.13 - [Language/C++] - [C++] C++ 동작 원리 [C++] C++ 동작 원리 뭐 자바를 공부하기 전에도 마찬가지로 자바의 동작원리부터 알아보고 시작을 했다. JAVA는 대충 설명하자면 JVM에서 띄워지기 때문에 어디든 JVM 머신이 있다면 실행 시킬 수 있다. 하지만, C++을 blaj2938.tistory.com 주소록 서비스로 과제를 하려고 한 이유는 널널한 개발자님의 유튜브 영상을 보고 딱 좋은 과제다! 라고 생각했다.(입문자에게는 너무 어렵기 때문....) https://www.youtube.com/..

Language/C++ 2024.01.13

[C++] C++ 동작 원리

뭐 자바를 공부하기 전에도 마찬가지로 자바의 동작원리부터 알아보고 시작을 했다. JAVA는 대충 설명하자면 JVM에서 띄워지기 때문에 어디든 JVM 머신이 있다면 실행 시킬 수 있다. 하지만, C++을 기본적인 C언어의 여러가지 기능을 추가로 만든 언어이다. 자바는 애초에 OOP(객체 지향)을 위해서 만들어졌지만 C는 절차지향형 언어이다. 그래서 여러기능을 추가한 C++에서는 OOP의 특징도 가져왔다. 그래서 두가지 다 특징을 갖고있다. 위는 대충 C++과 JAVA의 차이에 대해서 작성했지만, 아직 제대로 C++를 공부한게 아니라서 추가적으로 공부후에 어떤것 들이 다른것인지 알아보겠다.(공부하는 중.....) # 프로그래밍 OS를 공부하면서 배운 내용을 생각해보면 좋을 것이다. 소스코드라는 code형태의..

Language/C++ 2024.01.13

[C++] C++ 배우기를 선택한 이유

JAVA를 배운지 한 2년이 다된거 같다... 사실 JAVA를 마스터 했냐고 한다면 그렇지는 않다 흠.... JAVA를 공부하면서 쉽고 편하게 사용하기 만든 언어라는 생각이 들었다. JVM도 그렇고 주소 값 참조도 그렇고 알아서 자동으로 해주기 때문이다. 너무 잘 만든 언어이고 Kotilin과 같은 언어에 있어서도 확장성이 있다고 생각한다. 그럼에도 다시 회귀(?)해서 C++을 선택한 이유는 여러 이유가 있다. 첫번째, 면접에 보러갔더니 C++ 코드를 주고 출력값을 알려달라고 했다. 사실 너무 오래전에 C++이나 C를 공부해서 답변하지 못했다.... 두번째, CS를 공부하면서 메모리할당 이론에서 이해를 할 수가 없다. 나는 개인적으로 코드를 치면서 공부하는것들을 좋아한다. 근데 JAVA에서는 메모리를 자..

Language/C++ 2024.01.08
반응형