C++에서는 구조와 클래스가 기본적으로 동일합니다. 그러나 몇 가지 미묘한 차이점이 있습니다. 이러한 차이점은 아래에 나와 있습니다.
기본적으로 클래스 멤버는 비공개이지만 구조 멤버는 공개입니다. 이 두 코드를 살펴보고 차이점이 무엇인지 살펴보겠습니다.
#include <iostream> using namespace std; class my_class { int x = 10; }; int main() { my_class my_ob; cout << my_ob.x; }
This program will not be compiled. It will generate compile time error for the private data member.
#include <iostream> using namespace std; struct my_struct { int x = 10; }; int main() { my_struct my_ob; cout << my_ob.x; }
10
클래스나 구조에서 구조를 파생할 때 해당 기본 클래스의 기본 액세스 지정자는 공개이지만 클래스를 파생할 때는 기본 액세스 지정자는 비공개입니다.
위 내용은 C/C++ 구조와 클래스의 차이점의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!