본문 바로가기

반응형

전체 글

Error 'C3867' : 비표준 구문입니다. '&'를 사용하여 멤버 포인터를 만드세요. error 'C3867' : 비표준 구문입니다. '&'를 사용하여 멤버 포인터를 만드세요. 원인 : 함수를 호출할 때 ()를 붙여주지 않았기 때문이다. 해결 : 함수를 호출할 때 ()를 반드시 붙여주도록 하자. 더보기
Error 'lnk1120' : 1개의 확인할 수 없는 외부 참조입니다. Error lnk1120 : 1개의 확인할 수 없는 외부 참조입니다. 1. main함수가 존재하지 않는 경우 - 메인 함수를 작성 해주면 오류는 해결된다. 2. 선언되어 있지 않은 함수를 사용하려 하는 경우 - 함수를 선언해주도록 한다. 더보기
명백한 호출의 괄호 앞에 오는 식에는 함수(포인터) 형식이 있어야 합니다. 코드를 짜다보면 다음과 같은 오류를 보는 경우가 생길 것이다. 명백한 호출의 괄호 앞에 오는 식에는 함수(포인터) 형식이 있어야 합니다. 이 오류가 발생한 코드를 확인해보자. int rand = rand() % n; 랜덤함수를 사용하기 위해서 필요한 헤더파일은 모두 인클루드했다고 가정하자. 이 때, 위와 같은 오류가 나는 이유는 사용해야 하는 함수 명과 동일한 이름을 가진 변수명이 존재하기 때문이다. 따라서, 오류를 해결하기 위해서는 다음과 같이 코드를 수정하면 된다. int random = rand() % n; 더보기
연산자 중복 - '숫자' + '객체' 우선 얘기하고 싶은 것을 위해서 간단한 설명을 하도록 하겠다. 우리는 하나의 연산자를 보고 여러가지 생각을 떠올릴 수 있다. 다음의 예시들을 보도록 하자. 수학적 의미로서의 '+'의 예시 2 + 3 = 5 색상 혼합에서의 '+'의 예시 빨강 + 파랑 = 보라 문자열에서의 '+'의 예시 "에어팟" + "2" = "에어팟2" 이렇게 다양하게 생각을 할 수 있다. 그런데, C++에서는 기본적으로 맨 위에서 예시를 들었던 수학적 의미로서의 '+'만을 사용하더라. 따라서, 숫자와 숫자만 계산이 가능하고, 그 이외의 것들은 전부 계산이 불가능하다. 하지만, 코드를 작성하다보면 클래스를 활용할 때, 단순히 정해진 연산자만 이용하다 보면 불편함을 겪는 경우가 많이 발생하게 되더라. 따라서, 클래스를 사용하는 경우 동일.. 더보기
C-스트링과 string 클래스의 차이 우리는 C언어를 배울 때 문자열을 배웠다. char str1[20] = "Hello world!"; C언어에서는 '\0'으로 끝나는 문자 배열을 문자열로 취급하는 방법을 이용해 왔었고, 이는 C-스트링이라고 부른다. 그런데 우리는 C++을 배우면서 문자열을 다루는 방법에 C-스트링이 아닌 다른 방법이 있다는 것을 배우게 되었다. 우리는 그것을 string 클래스라고 부른다. 우선, string 클래스를 사용하기 위해서는 다음 코드가 필요하다. #include using namespace std; 다음의 예시를 확인하도록 하자. char str1[20] = "Hello World!"; string str2 = "Hello World!"; cout 더보기
명품 C++ Programming 6장 Open Challenge Up & down 게임 만들기 Up & Down 게임 프로그램을 작성해보자. 게임에 참석하는 사람은 2명이며, 번갈아 가며 다음과 같이 숨겨진 답에 접근해 간다. Up & Down 게임은 전체적으로 UpAndDownGame 클래스로 작성하고 static 멤버로만 구성하라. 선수를 표현하기 위해 Person 클래스를 작성하고 main() 함수는 프로그램을 시작시키는 기능정도로만 구현하라. 소스코드 #include #include #include #include using namespace std; class Person { public: Person(); ~Person(); string name; int num; }; Person::Person() {}; Person::~Person() {}; int ma.. 더보기
백준 온라인 저지 (Baekjoon Online Judge) - 11441번 : 합 구하기 https://www.acmicpc.net/problem/11441 #include int main() { int num[100001] = { 0 }; int sum[100001] = { 0 }; int n; scanf("%d", &n); for (int p = 1; p 더보기

반응형