일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- gpt
- PCA
- regression
- AI
- supervised learning
- 오블완
- deep learning
- 회귀
- LLM
- ChatGPT
- 분류
- Machine Learning
- GPT-4
- 딥러닝
- OpenAI
- LG Aimers 4th
- LG Aimers
- LG
- 머신러닝
- 지도학습
- Classification
- 해커톤
- 티스토리챌린지
- Today
- Total
목록분류 전체보기 (333)
SYDev
헤더파일과 인라인 함수 인라인 함수는 컴파일 과정에서 함수의 호출 문이 있는 곳에 함수의 몸체 부분이 삽입되어야 하므로, 클래스의 선언과 동일한 위치에 선언되어 컴파일러가 동시에 참조할 수 있게 해야 한다. 이와 관련된 다음 예제를 살펴보자. 파일명 : CarInline.h #ifndef __CARINLINE_H__ #define __CARINLINE_H__ #include using namespace std; namespace CAR_CONST { enum { ID_LEN = 20, MAX_SPD = 200, FUEL_STEP = 2, ACC_STEP = 10, BRK_STEP = 10 }; } class Car { private: char gamerID[CAR_CONST::ID_LEN]; int fu..
C++에서의 파일 분할 지난 글에서는 클래스를 선언, 정의하고 접근제어 지시자를 설정하는 법에 대해서 배웠다. 그렇다면 우리는 이 클래스의 선언과 정의(멤버함수의 정의)를 한 파일에 담지 않고 분할해서 배치할 필요가 있다. #include #include using namespace std; namespace CAR_CONST { enum { ID_LEN = 20, MAX_SPD = 200, FUEL_STEP = 2, ACC_STEP = 10, BRK_STEP = 10 }; } class Car { private: char gamerID[CAR_CONST::ID_LEN]; int fuelGauge; int curSpeed; public: void InitMembers(char * ID, int fuel)..
객체(Object) : 컴퓨터 과학에서 객체란 클래스에서 정의한 것을 토대로 메모리에 할당된 것으로 프로그램에서 사용되는 데이터 또는 식별자에 의해 참조되는 공간을 의미하며, 변수, 자료 구조, 함수 또는 메소드가 될 수 있다. 절차적 프로그래밍에서의 객체 하나의 객체는 자료나 명령을 포함할 수 있지만 두 가지를 동시에 포함하지 않는다. 객체지향 프로그래밍에서의 객체 객체지향 프로그램에서 객체는 클래스(class)의 인스턴스(instance)이다(메모리상에 구현된 객체가 인스턴스). 클래스는 객체를 설계할 때 필요한 설계도이고, 객체는 class가 만들어진 결과물이다. 다음 예제를 살펴보자. Car car1("car1", "old", 100) Car car2("car2", "new", 200) 다음과 같..
클래스(Class) vs. 구조체(Struct) Chapter 03-1에서 설명한 구조체는 클래스의 일종이다. 또한 구조체를 작성해놓은 코드에서 키워드 struct만 class로 바꿔버리면 구조체가 클래스로 바뀌어버린다. 그렇다면 이외에 클래스와 구조체는 무슨 차이점이 있을까? 접근제어 지시자(접근제어 레이블) 클래스와 구조체의 유일한 차이점은 변수 및 함수의 접근 허용범위 설정의 유무이다. 클래스는 구조체와 달리 정의하는 과정에서 클래스 내부의 변수 및 함수의 접근 허용범위를 별도로 선언해야 한다. 그리고 이런 클래스의 접근제어 지시자에는 총 3가지가 있다. public // 어디서든 접근 허용 protected // 상속관계에 놓여있을 때, 유도 클래스에서의 접근 허용 private // 클래스 내부..
C++에서의 구조체 변수 선언 구조체는 연관 있는 데이터를 묶을 수 있는 문법적 장치이다. 이런 구조체가 어떤 상황에 필요할까? 우리는 하나의 객체에 대하여 여러가지 변수를 선언해야할 때가 있다. 예를 들어서 하나의 자동차가 있다면 이에 대해서 소유주, 연료량, 현재속도 등의 정보가 필요하다. 이런 객체의 정보를 그룹화되지 않은 독립변수로 선언한다면 새로운 객체가 등장할 때마다 똑같은 정보를 매번 새로 만들어야 하는 불편함이 생긴다. 이런 불편함을 덜기 위해서 c++에서는 하나 이상의 변수를 묶어서 새로운 자료형을 정의하는 구조체(struct)를 이용할 수 있다. 구조체는 다음과 같이 정의할 수 있다. struct Car { char gamerID[ID_LEN]; //소유자ID int fuelGauge;..
C++에서 C언어의 표준함수 호출 C언어의 라이브러리에 있는 함수들을 이용하기 위해서는 .h를 생략하고 앞에 c를 붙이면 된다. #include -> #include #include -> #include #include -> #include #include -> #include 이와 관련된 다음 예제를 살펴보자. #include #include #include using namespace std; int main(void) { char str1[] ="Result"; char str2[30]; strcpy(str2,str1); printf("%s: %f \n", str1, sin(0.14)); printf("%s: %f \n", str2, abs(-1.25)); return 0; } Result: 0.1..
동적 메모리 할당 & 정적 메모리 할당 동적 메모리 할당 : 동적 메모리 할당은 컴퓨터 프로그래밍에서 실행 시간 동안 사용할 메모리 공간을 할당하는 것이다. 정적 메모리 할당 : 정적 메모리 할당은 메모리 할당 방법 중 하나로, 프로그램이 실행될 때 이미 메모리의 크기가 결정된다. 정적 메모리 할당의 예시는 다음과 같다. char examples[10]; 위처럼 코드를 입력하면 char 자료형 10개가 나란히 선언되고, examples 배열에는 10개의 자료형만 들어갈 수 있다. 동적 메모리 할당을 하는 이유? 정적 메모리 할당을 하면 기억공간이 낭비될 경우가 생긴다. 예를 들어서 위에서 선언한 examples에는 10글자를 넣을 수 있는데 이에 미치지 못하는 글자수를 가진 문자형을 넣는다면 그만큼 메모..