목록C++ (23)
브래의 슬기로운 코딩 생활

C++ 중간고사 정리 202114013 김동현 논리 연산자 - &&, ||, ! 문자형 변수는 작은 따옴표를 붙인다. 문자열 변수는 큰 따옴표를 붙이고 널문자가 뒤에 자동으로 붙는다. 입출력 스트림 객체 cout, cin - #include std::을 써야하지만 using namespace std;를 써도 된다. 아니면 using std::cout; / using std::cin; 등등 이렇게 하나하나 써주어도 된다. cout >: scanf와 같이 입력에 사용 C++에서는 문자열 자료형 String을 사용할 수 있다. String 은 C언어의 const char*와 같다. String도 사용하려면 using std::string;을 쓰거나 using namespace std;을 쓰면 된다. 함수 정의..

오늘은 c++의 클래스와 멤버 변수 선언 방법에 대해 배웠다. 클래스 멤버의 접근 권한은 private, public, protected가 있다. 먼저 private는 기본 속성으로 생략해도 된다. 그리고 클래스 내부에서만 접근힐 수 있다. 다음으로 public은 클래스 외부에서도 접근 할 수가 있다. 마지막으로 protected는 아직 안배웠지만 파생 클래스가 있다면 그 클래스에서는 접근 할 수 있다. 그리고 C언어 에서는 문자열을 저장하려면 const char*를 써야 하는데 C++에서는 string 자료형으로 대체 할 수 있다. 그리고 배열 복사를 하려면맨 앞에 #define _CRT_SECURE_NO_WARNINGS 를 쓰고 strcpy()라는 함수를 이용해서 매개변수 자리에 복사할 배열 이름과 ..

오늘은 드디어 본격적인 C++언어 영역이라고 할 수 있는 클래스에 대해서 배웠다. 일단 객체지향 프로그래밍 언어의 특징 3가지를 알아야한다. 1. 캡슐화 2. 상속성 3. 다형성 이다. 클래스의 접근 권한 중에는 1. private 2. public 3. protected 가 있다. 먼저 private속성은 해당 클래스 내부에서만 접근이 가능하고 생략이 가능한 속성이다. 그러므로 private속성의 변수는 매인 함수라던지 다른 코드블록에서는 접근이 불가능하다는 것이다. 이게 바로 첫번째 특징 '캡슐화'이다. 그리고 public속성은 어디에서든지 접근이 가능하다 마지막으로 protected는 private와 같지만 상속클래스가 있는 경우 그곳에서는 접근이 가능하다. 간단히 상속을 설명하자면 부모클래스와 자..

오늘은 본격적으로 C++주요 문법. 클래스에 대해서 진도를 나갔다. 일단 C언어와 C++의 가장 큰 차이점은 C언어는 구조적 프로그래밍 방식이고 C++은 객체 지향 프로그래밍 방식이다. 둘의 차이점은 다음과 같다. 구조적 프로그래밍은 자료와 처리동작이 따로따로 있지만 객체지향 프로그래밍은 자료와 처리동작을 하나로 묵어놨다. 이렇게 자료와 처리동작을 묶어서 '객체'라고 하는 것이다. 클래스는 구조체와 비슷하지만 좀더 많은 것을 저장할수 있다. 구조체는 멤버 변수를 저장할 수 있지만 클래스는 맴버 변수, 맴버 함수를 저장할 수 있고 접근 범위도 지정할 수 있다. 그렇게 클래스 안에있는 맴버들은 객체가 된다. 그리고 객체는 다른말로 인스턴스 라고도 한다. 객체 지향의 중심기술 3가지가 있다 바로 캡슐화, 상속..
C++에서는 문자열을 표현할 때 const char* 대신 string 이라는 자료형을 쓸수 있다. 대신에 using namespace std; 를 써야한다. 한마디로 std를 써야된다. 함수 선언이 귀찮다면 함수 선언 자리에 함수 정의를 하면 선언과 정의를 같이 할 수 있다. (비추천) 그리고 내가 직접 헤더파일을 만들고 include 할수 있는데 헤더.h 라는 파일이 있으면 표준 헤더 파일이 아니기 때문에 include "헤더.h" 라고 써야한다. 재귀함수는 자기 자신을 호출하는 함수를 말한다. 실매개변수는 함수를 호출할 때 사용하는 매개변수 이고 형식매개변수는 함수 정의에서 사용하는 매개변수 이다. call by value는 실매개변수의 값을 형식매개변수로 전달하는 것 이고 call by refer..

오늘은 중요한 C++프로그래밍 수업을 했다~ 실습을 아주 많이 했는데 내가 타자 치는 속도가 느려서 (특히 영타는 위치를 안 외워서 더 느림) 타자 연습을 나중에 해야겠다는 생각을 했다. ------------------------------------------------------------- 제어문 입출력 스트림 객체 cout, cin - #include - std::cout > // 키보드로부터 데이터를 입력 받는 객체, scanf() 조건문 - if - if문 다음 괄호 안의 조건식이 참이면 문장 1을 실행하고 거짓이면 실행하지 않고 건너뜀 if(조건식) 문장1; 다음문장; 조건문 - if~else 문 - if문 다음의 괄호 안의 조건식이 참이면 문장1 실행, 거짓이면 문장2와 다음 문장을 실행..

으아아악 어제 자기전에 블로그에 일기 쓰려고 했는데 깜빡하고 그냥 자버렸다... 그게 어제 자려고 누웠는데 생각 나서 상당히 불편했다. 그래서 오늘은 잊어버리기 전에 얼른(?) 일기를 쓰려고 한다. 그런데 어제 무슨 일이 있었는지 내가 티스토리 블로그를 시작하고 처음으로 최고 방문수를 찍었다! 후후후 이제 앞으로 나도 점점 방문수가 더 늘어나지 않을까 라는 기대를 조심스럽게 해본다. 원래 이런 기대는 조심스럽게 해야한다. 아무튼 어제는 서버프로그램 한 과목 이어서 힘들지 않았다. 그리고 오늘은 원래 시간표 대로는 C++강의랑 네트워크기초실습 강의도 있어서 바빠야하는 날인데 네트워크기초실습 강의는 당분간은 비대면 동영상 강의로 진행이 된다고 한다. 아무래도 코로롱 때문인것 같다. 아무튼 그래서 오늘도 C+..

오늘은 C++프로그래밍 2주차 수업을 들었다. 오늘 원래 오후에 네트워크기초실습 수업이 있었는데 동영상 강의로 전환된다는 공지가 떠서 집에 일찍 올 수 있었다. 아무튼 그래서 네트워크기초실습은 추석 연휴중에 글을 올릴것 같다. -------------------------------------------------------------------- C vs C++ C언어 에서는 #include 를 하지만 C++ 에서는 #include 을 쓴다 C언어 에서는 printf, scanf를 쓰지만 C++ 에서는 cout, cin 을 쓴다. 그리고 cout,cin을 쓸 때에는 3가지 방법이 있는데 1. 각각 앞에 std::을 붙인다. 2. 메인함수 앞 부분에 using namespace std; 라고 쓴다. 3...
와 어제 예상했던대로 오늘 엄~청 힘들었다. 내일이 일주일중에서 가장 빡센 날인데 내일도 힘들거라고 예상된다. 그래도 내일 지나면...쉰다. 추석 연휴에는 집에서 유튜브 강의 보면서 C언어 복습을 해볼까 한다. C++을 배우기 시작할거니까 그 전에 C언어를 복습해 두는게 좋을 것 같다. 뭐 어느정도 기억나기는 하는데 막상 하려면 아마 기억 안날거 같아서 복습을 하려고 한다.

어제는 예습을 하긴 했는데 블로그에 올리는 것을 까먹어서 오늘 한꺼번에 올리려고 한다. 그런데 C++ 분량이 너무 많아서 개강 전까지 다 할 수 있을까 걱정된다. ===================================================================== 구조체 숫자를 저장: int, double 문자를 저장: char 문자열 저장: char*, char배열 struct 구조체 이름{ char ~; int ~; doble~; ~; }; 변수: int x; = 4바이트짜리 단독주택 1가구 배열: int x[5] = 4바이트짜리 주택 5가구 / 동일한 형의 데이터들을 하나의 단위로 취급 구조체(변수/배열/구조체들의 모임) = 다른 형의 데이터들을 하나의 단위로 취급 C구조체 ..