[C++] Constructor(생성자)와 Destructor(소멸자)
·
C & C++/C++
멤버변수의 초기화 클래스를 가지고 객체를 생성하면, 해당 객체는 메모리에 즉시 생성된다. 하지만 이 객체는 모든 멤버 변수를 초기화 하기 전에는 사용할 수 없다. 객체의 멤버 변수는 사용자나 프로그램이 일반적인 초기화 방식으로 초기화할 수 없다. 만약 pirvate 멤버를 가지고있으면 직접 접근할 수 없기 때문이다. 따라서 private 멤버에 접근할 수 있는, 초기화만을 위한 public 함수가 필요하다. Counstructor(생성자) C++에서는 객체의 생성과 동시에 멤버 변수를 초기화해주는 생성자를 제공한다. 생성자의 이름은 해당 클래스의 이름과 같다. 클래스이름(); 생성자는 초기화를 위한 데이터를 인수로 전달받을 수 있다. 생성자는 반환값이 없지만, void형으로 선언하지 않는다. 객체를 초기..
[C++] Class(클래스)란?
·
C & C++/C++
OOP(Object-Oriented Programming) 객체 지향 프로그래밍 객체 지향 프로그래밍에서는 모든 데이터를 객체(object)로 취급하며, 객체가 프로그래밍의 중심이 된다. Object(객체)란? https://ko.wikipedia.org/wiki/%EA%B0%9D%EC%B2%B4_(%EC%BB%B4%ED%93%A8%ED%84%B0_%EA%B3%BC%ED%95%99) 객체 (컴퓨터 과학) - 위키백과, 우리 모두의 백과사전 ko.wikipedia.org 컴퓨터과학에서 객체는 클래스에서 정의한 것을 토대로 메모리에 할당된 것으로 프로그램에서 사용되는 데이터 또는 식별자에 의해 참조되는 공간을 의미하며, 변수, 자료 구조, 함수가 될 수 있다. 프로그래밍 언어는 변수를 이용해 객체에 접근하므..
[Programmers - Lv03] 추석 트래픽(C++ / Python)
·
카테고리 없음
추석 트래픽 코딩테스트 연습 - [1차] 추석 트래픽 입력: [ 2016-09-15 20:59:57.421 0.351s, 2016-09-15 20:59:58.233 1.181s, 2016-09-15 20:59:58.299 0.8s, 2016-09-15 20:59:58.688 1.041s, 2016-09-15 20:59:59.591 1.412s, 2016-09-15 21:00:00.464 1.466s, 2016-09-15 21:00:00.741 1.581s, 2016-09-15 21:00:00.748 programmers.co.kr 문제 설명 주어지는 로그 문자열의 구성은 다음과 같다. "2020-09-15 18:03:00.000 2.000s" 날짜 종료 시간 처리 시간" 로그 문자열들을 이용하여 로그들이..
[Programmers - lv02] 더 맵게 (cpp / python)
·
Algorithm/Programmers
더 맵게 코딩테스트 연습 - 더 맵게 매운 것을 좋아하는 Leo는 모든 음식의 스코빌 지수를 K 이상으로 만들고 싶습니다. 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 Leo는 스코빌 지수가 가장 낮은 두 개의 음식을 아래와 같�� programmers.co.kr 문제 설명 우선순위 큐를 이용하여 해결하는 문제. 섞은 음식의 스코빌 지수 = 가장 맵지 않은 음식의 스코빌 지수 + (두 번째로 맵지 않은 음식의 스코빌 지수 * 2) 이 값을 우선순위 큐에 갱신 해주며 문제의 조건을 해결하면 된다. 문제 풀이 소스코드 : C++ #include #include #include #include using namespace std; int solution(vector scoville, int K) { i..
[Programmers - lv01] 자릿수 더하기 (cpp / python)
·
Algorithm/Programmers
자릿수 더하기 코딩테스트 연습 - 자릿수 더하기 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. 제한사항 N의 범위 : 100,000,000 이하의 자연수 입출 programmers.co.kr 문제 설명 주어지는 숫자의 각 자릿수를 더하는 문제. 방법은 여러가지다, 주어지는 숫자를 to_string으로 문자열화 하여 문자 1개씩 처리해도 되고, 숫자를 10으로 나누어 몫과 나머지를 이용하여 풀어도 된다. 문제 풀이 소스코드 : C++ 문자열 변환 #include using namespace std; int solution(int n){ int answer = 0;..
[2020 kakao blind recruitment] lv2 문자열 압축(cpp/python)
·
Algorithm/Programmers
문자열 압축 코딩테스트 연습 - 문자열 압축 데이터 처리 전문가가 되고 싶은 어피치는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문자 programmers.co.kr 문제 설명 주어지는 문자열을 특정 길이만큼 잘라서 같은 문자면 숫자로 바꿔 표시했을 때의 (1은 생략) 그 문자열의 길이가 가장 짧은 순간을 찾는 문제 처음에는 1부터 주어지는 문자열의 길이만큼 자를 길이를 늘려가며 모두 탐색해야하나 싶었지만, 잘 생각해보면 해당 길이만큼의 중복되는 문자열을 찾는 것이므로, 문자열의 길이/2만큼만 탐색하면된다. 문제 풀이 소스코드 : C++ 예전 풀이 #include #include #include #inclu..
[Programmers - lv01] 문자열을 정수로 바꾸기(cpp / python)
·
Algorithm/Programmers
문자열을 정수로 바꾸기 코딩테스트 연습 - 문자열을 정수로 바꾸기 문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요. 제한 조건 s의 길이는 1 이상 5이하입니다. s의 맨앞에는 부호(+, -)가 올 수 있습니다. s는 부호와 숫자로만 이루어져있습니 programmers.co.kr 문제 설명 내장 함수를 이용하여 풀어도 되지만 직접 구현도 어렵지 않다. 문제 풀이 소스코드 : C++ #include #include using namespace std; int solution(string s) { return stoi(s); } #include #include using namespace std; int solution(string s) { int ret = 0, sign=1;..
[Programmers - lv01] 수박수박수박수박수박수(cpp / python)
·
Algorithm/Programmers
수박수박수박수박수박수 코딩테스트 연습 - 수박수박수박수박수박수? 길이가 n이고, 수박수박수박수....와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 수박수박을 리턴하고 3이라면 수박수를 리턴하면 됩니다. 제한 조�� programmers.co.kr 문제 설명 간단한 문제. 문제 풀이 소스코드 : C++ #include #include using namespace std; string solution(int n) { string answer = ""; for(int i=0; i
WONILLISM
'C++' 태그의 글 목록