English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
이 문서에서는 C ++프로그래밍에서 객체와 클래스를 사용합니다.
C ++은 다중 패러다임 프로그래밍 언어입니다. 이는 다른 프로그래밍 스타일을 지원한다는 의미입니다.
프로그래밍 문제를 해결하는 인기 있는 방법 중 하나는 객체를 생성하는 것입니다. 이는面向对象编程 스타일이라고 합니다.
C ++객체 지향(OO) 프로그래밍 스타일을 지원합니다. 이 스타일은 복잡한 문제를 작은 집합으로 나누어 처리할 수 있게 합니다.
객체는 데이터의 집합이며, 이 데이터에 작용하는 함수들입니다.
C ++객체를 생성하기 전에 클래스를 정의해야 합니다.
클래스는 객체의 블루프린트입니다.
클래스는 집의 스케치(원형)로 볼 수 있습니다. 바닥, 문, 창 등 모든 세부 정보가 포함되어 있습니다. 이 설명을 기반으로 집을 짓습니다. 집은 객체입니다.
같은 설명으로 많은 집을 만들 수 있기 때문에, 하나의 클래스를 기반으로 많은 객체를 생성할 수 있습니다.
C ++에서, class 키워드와 그 뒤의 클래스 이름으로 클래스를 정의합니다.
클래스의 주체는 중괄호 내에서 정의되며, 마지막에콜론끝.
class className { // 일부 데이터 //일부 기능 };
class Test { private: int data1; float data2; public: void function1(); { data1 .data 2; } float function2(); { data2 .data 3.5; return data2; } };
여기서는 Test라는 클래스를 정의했습니다.
이 클래스는 두 가지 데이터 구성원을 가지고 있습니다: data1및 data2그리고 두 가지 구성 함수: function1()와 function2()
위의 예제에서는 두 가지 키워드인 private와 public을 이미 주목했을 수 있습니다.
private 키워드는 데이터와 함수를 비밀로 만듭니다. 비밀 데이터와 함수는 같은 클래스 내에서만 접근할 수 있습니다.
public 키워드는 데이터와 함수를 공개합니다. 데이터와 함수는 클래스 외부에서 접근할 수 있습니다.
여기서, data1및 data2은 비밀 구성원이며 function1()와 function2()는 공개 구성원입니다.
클래스 외부에서 비밀 데이터에 접근하려고 시도하면 컴파일러는 오류를 일으킵니다.OOP에서이 기능은 데이터 숨기기라고 합니다.
클래스를 정의할 때는 객체의 규격만 정의합니다. 메모리나 저장 공간을 할당하지 않습니다.
클래스에서 정의된 데이터와 접근 함수를 사용하려면 객체를 생성해야 합니다.
className objectVariableName;
다음과 같은 방법으로 Test 클래스의 객체를 생성할 수 있습니다. (위의 예제에서 정의됨):
class Test { private: int data1; float data2; public: void function1(); { data1 .data 2; } float function2(); { data2 .data 3.5; return data2; } }; int main() { Test o1, o2; }
이곳에서는 Test 클래스의 두 개의 객체 o1와 o2
위의 Test 클래스에서 data1및 data2는 데이터 멤버이며, function1()와 function2()는 멤버 함수입니다.
을 사용하여 데이터 멤버와 멤버 함수에 접근할 수 있습니다. (. ) 연산자. 예를 들어,
o2.function1();
이는 Test 클래스에서 객체 o2function 호출1() 함수.
또한, 다음과 같은 방법으로 데이터 멤버에 접근할 수 있습니다:
o1(); 예제에서의 어떤 함수나 클래스도.2 .data 5.5;
중요한 것은, 프라이빗 멤버에 접근할 수 있는 것은 클래스 내부에서만입니다.
따라서, o를 사용하여2.function1코드 o1(); 예제에서의 어떤 함수나 클래스도.2 .data 5.5=
// C 프로그래밍에서의 객체와 클래스를 설명하기 위해 사용됩니다. ++프로그래밍에서 객체와 클래스의 작용을 설명하는 프로그램 #include <iostream> using namespace std; class Test { private: int data1; float data2; public: void insertIntegerData(int d) { data1 = d; cout << "숫자: " << data1; } float insertFloatData() { cout << "\n입력 데이터: "; cin >> data2; return data2; } }; int main() { Test o1, o2; float secondDataOfObject2; o1.insertIntegerData(12); secondDataOfObject2 = o2.insertFloatData(); cout << "당신이 입력하셨습니다 " << secondDataOfObject2; return 0; }
출력 결과
숫자: 12 입력 데이터: 23.3 당신이 입력하셨습니다 23.3
이 프로그램에서는 Test 클래스에서 두 개의 데이터 멤버 data1및 data2및 두 개의 멤버 함수 insertIntegerData()와 insertFloatData()를 정의합니다.
동일한 클래스의 두 개의 객체 o1와 o2
다음과 같은 방법으로 o1객체가 insertIntegerData() 함수를 호출합니다:
o1.insertIntegerData(12);
이렇게 하면 객체 o1의 data1이 값을 설정합니다.12
그런 다음, 객체 o를 호출합니다.2의 insertFloatData() 함수를 사용하여 함수의 반환 값을 변수 secondDataOfObject에 저장합니다.2에서:
secondDataOfObject2 = o2.insertFloatData();
이 프로그램에서 o1의 data2와 o2의 data1사용되지 않고 잔여 값이 포함되어 있습니다.
다음 주제를 확인하여 객체와 클래스에 대한更多信息를 알아보세요: