본문 바로가기

반응형

c++

(52)
[문과 코린이의 IT 기록장] C++ - 클래스 템플릿(Class Template) (클래스 템플릿의 정의, 클래스 템플릿의 선언과 정의의 분리, 배열 클래스의 템플릿화) [문과 코린이의 IT 기록장] C++ - 클래스 템플릿(Class Template) (클래스 템플릿의 정의, 클래스 템플릿의 선언과 정의의 분리, 배열 클래스의 템플릿화) 1. 클래스 템플릿의 정의 [문과 코린이의 IT 기록장] C,C++ - 템플릿(Template)에 대한 이해와 함수 템플릿 (함수를 대상으로 템 [문과 코린이의 IT 기록장] C,C++ - 템플릿(Template)에 대한 이해와 함수 템플릿 (함수를 대상으로 템플릿 이해하기, 함수 템플릿과 템플릿 함수, 둘 이상의 형(Type)에 대해 템플릿 vansoft1215.tistory.com * 이전의 내용처럼 함수를 템플릿으로 정의했듯이, 클래스도 템플릿으로 정의가 가능하다. [문과 코린이의 IT 기록장] C,C++ - 연산자 오버로딩 5 ..
[문과 코린이의 IT 기록장] C,C++ - 템플릿(Template)에 대한 이해와 함수 템플릿 (함수를 대상으로 템플릿 이해하기, 함수 템플릿과 템플릿 함수, 둘 이상의 형(Type)에 대해 템플릿 선언하기, 함수 .. [문과 코린이의 IT 기록장] C,C++ - 템플릿(Template)에 대한 이해와 함수 템플릿 (함수를 대상으로 템플릿 이해하기, 함수 템플릿과 템플릿 함수, 둘 이상의 형(Type)에 대해 템플릿 선언하기, 함수 템플릿의 특수화 (Specialization)) 1. 함수를 대상으로 템플릿 이해하기 - 함수 템플릿의 특징 : 함수 템플릿은 함수를 만들어 낸다. : 함수의 기능은 결정되어 있으나, 자료형은 결정되어 있지 않아서 결정해야 한다. * 즉 다양한 자료형의 함수를 만들어 낼 수 있다. 1 ) 함수 int Add(int num1, int num2) { return num1 + num2; } - 함수의 기능 : 덧셈 - 함수의 자료형 : int형 2 ) 함수 -> 템플릿 활용 - 이러한 함수를 만들..
[문과 코린이의 IT 기록장] C++ 백준 문제풀이 - 단어의 개수 (1152) [문과 코린이의 IT 기록장] C++ 백준 문제풀이 - 단어의 개수 (1152) [ 문제 ] 영어 대소문자와 띄어쓰기만으로 이루어진 문자열이 주어진다. 이 문자열에는 몇 개의 단어가 있을까? 이를 구하는 프로그램을 작성하시오. 단, 한 단어가 여러 번 등장하면 등장한 횟수만큼 모두 세어야 한다. [ 입력 ] 첫 줄에 영어 대소문자와 띄어쓰기로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 띄어쓰기 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 문자열의 앞과 뒤에는 공백이 있을 수도 있다. [ 출력 ] 첫째 줄에 단어의 개수를 출력한다. [ 코드 ] #include #include using namespace std; int main() { str..
[문과 코린이의 IT 기록장] C++ 백준 문제풀이 - 단어 공부 (1157) [문과 코린이의 IT 기록장] C++ 백준 문제풀이 - 단어 공부 (1157) [ 문제 ] 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. [ 입력 ] 첫째 줄에 알파벳 대소문자로 이루어진 단어가 주어진다. 주어지는 단어의 길이는 1,000,000을 넘지 않는다. [ 출력 ] 첫째 줄에 이 단어에서 가장 많이 사용된 알파벳을 대문자로 출력한다. 단, 가장 많이 사용된 알파벳이 여러 개 존재하는 경우에는 ?를 출력한다. [ 코드 ] #include using namespace std; int main() { string ch; // 입력받을 문자 int a[26] = { 0, }; // 해당 알..
[문과 코린이의 IT 기록장] C,C++ - String 클래스의 디자인(C++ 표준과 표준 string 클래스, 문자열 처리 클래스의 정의) [문과 코린이의 IT 기록장] C,C++-String 클래스의 디자인(C++ 표준과 표준 string 클래스, 문자열 처리 클래스의 정의) 1. C++ 표준과, 표준 String 클래스 [ 표준 String 클래스 ] * C++ 표준 라이브러리에는 string이라는 이름의 클래스가 정의되어 있음. - string클래스 : 문자열 처리를 목적으로 정의된 클래스 - string 클래스의 사용 : 헤더파일 포함 Case 1 ) #include #include using namespace std; int main() { string str1 = "I like "; string str2 = "string class"; string str3 = str1 + str2; // str1.operator+(str2) 연산..
[문과 코린이의 IT 기록장] C,C++ - 문자 (문자(char), 문자 배열, 문자열, Stirng) [문과 코린이의 IT 기록장] C,C++ - 문자 (문자(char), 문자 배열, 문자열, Stirng) 1. 문자(char) : 문자는 인간만이 가지는 특수한 인식 체계이다. 즉, 컴퓨터 내부에서 문자라는 것은 존재하지 않는다. 1) char : char변수는 1byte 정수(integer)이다. : 그러나, char 자료형이 정수일지라도, 일반 정소와는 다른 방식으로 사용한다. : 그래서, char 값을 정수로 해석하는 대신, ASCII code 문자로 해석한다. * ASCII란? ) American Standard Code for Information Interchange의 약자로, 영어 문자(+몇 개의 다른 기호)를, 0에서 127사이의 숫자(ASCII)코드로 나타낸다. 예를 들어, 'a'의 문자..
[문과 코린이의 IT 기록장] C,C++ - 함수 반환형 (Return by Value, Return by Address, Return by Reference) [문과 코린이의 IT 기록장] C,C++ - 함수 반환형 (Return by Value, Return by Address, Return by Reference) 기억할 사항 ) int a = 10; // Rvalue인 10을 복사해서, a에 저장한다. (이동하는게 아님) [ivalue와 rvalue] - lvalue : 단일 표현식 이후에도 없어지지 않고, 지속되는 객체. 즉, 이름을 가지는 객체 ex ) const타입을 포함한, 모든 변수는 lvalue라고 할 수 있음, ++x - Rvalue : 표현식이 종료된 후에는 더 이상 존재하지 않는 암시적인 값 ex ) 상수, 임시객체, x++ cf ) 둘 다 증가된 값을 리턴하지만, ++x는 증가된 x 자신을 리턴하기 때문에 lvalue인 반면에, x++는..
[문과 코린이의 IT 기록장] C,C++ - 가상(Virtual)의 원리와 다중상속 2 : 다중상속에 대한 이해 ( 다중상속에 대한 견해, 다중상속의 기본방법, 다중상속의 모호성, 가상 상속 ) [문과 코린이의 IT 기록장] C,C++ - 가상(Virtual)의 원리와 다중상속 2 : 다중상속에 대한 이해 ( 다중상속에 대한 견해, 다중상속의 기본방법, 다중상속의 모호성, 가상 상속 ) 1. 다중상속에 대한 견해 - 다중상속이란 둘 이상의 클래스를 동시에 상속한다는 것을 말한다. - 그러나, 다중상속은 꽤 논란이 발생하는 문법이다. 따라서, 다중상속을 매우 예외적으로, 제한적으로 사용할 필요가 있다. 2. 다중상속의 기본방법 ex ) #include using namespace std; class BaseOne{ public: void SimpleFuncOne() { cout

반응형