그런데 이러한 기본적인 패러다임이 도움말의 OOP 설명에서 다루어지지 않는다는 사실에 놀랐습니다.
이는 직접적인 OOP 기능이라기보다는 프로그래밍 트릭입니다.
집계와 관련하여:
객체 지향 프로그래밍에서 집계(구성 또는 포함이라고도 함)는 중첩을 통해 기존 클래스에서 새로운 클래스를 만드는 기법을 말합니다. 집계는 종종 "자동차에는 차체, 바퀴, 엔진이 있다"는 식으로 '멤버십 관계'라고도 합니다. 새 클래스의 중첩된 객체는 일반적으로 비공개로 선언되어 해당 클래스로 작업하는 애플리케이션 프로그래머가 접근할 수 없습니다. 반면에 클래스 작성자는 기존 클라이언트 코드를 방해하지 않고 이러한 객체를 수정할 수 있습니다. 또한 런타임에 중첩된 객체를 교체하면 프로그램의 동작을 동적으로 변경할 수 있습니다. 상속 메커니즘은 컴파일 단계에서 검사되는 파생 클래스에 대한 제한이 설정되어 있기 때문에 이러한 유연성이 없습니다. 통합을 기반으로 외부 객체에 할당된 작업이 이러한 종류의 작업을 해결하는 데 특화된 내부 객체에 위임되는 위임 방법이 구현됩니다.
일반적인 명명 규칙에서 접두사 m_은 클래스 데이터 멤버에 붙습니다. 주로 메서드에서 지역 변수와 클래스 데이터를 명시적으로 구분하기 위한 것입니다.
m_ 접두사는 MFC에서 프로그래밍할 때 사용되었으며, 비공개 및 보호 변수에 적용되었으며, 다른 "일반적으로 허용되는" 규칙은 없습니다. MFC가 사라진 후 모든 사람들은 이 멍청한 m_에 대해 잊어버렸습니다(감사합니다)). 믿기지 않는다면 예제를 다운로드하여 직접 확인해 보세요(MFC에 대한 섹션도 있습니다) http://archive.msdn.microsoft.com/vcsamples.
French, German, Italian, Japanese, Korean, Russian, Simplified Chinese, Spanish, Traditional Chinese The Microsoft Visual C++ 2010 Sample Library provides code examples for applications and tools showing the capabilities of Visual C++ and the libraries and technologies it supports. Visual Studio 2010 Samples are now live! Click on the links...
접두사 m_는 MFC에서 프로그래밍 할 때 사용되었으며 개인 및 보호 된 변수에 적용되었으며 다른 "일반적으로 허용되는"규칙은 없습니다. MFC가 사라진 후, 이 모든 멍청한 m_는 잊혀졌습니다, 감사합니다.) 믿지 않으시는 분들은 예제를 다운로드하여 직접 확인해 보세요(MFC에 대한 섹션도 있습니다) http://archive.msdn.microsoft.com/vcsamples.
Суть венгерской нотации сводится к тому, что имена идентификаторов предваряются заранее оговорёнными префиксами, состоящими из одного или нескольких символов. При этом, как правило, ни само наличие префиксов, ни их написание не являются требованием языков программирования, и у каждого программиста (или коллектива программистов) они могут быть...
그건 그렇고, 나는 그러한 근본적인 패러다임이 도움말의 OOP에 대한 설명에서 다루어지지 않는다는 사실에 놀랐습니다.
1 아니요, 상속을 사용하는 것입니다.
2가 더 따뜻하고 연관 및 집계와 함께 세 가지 바인딩 옵션 중 하나 인 컴포지션입니다.
그런데 이러한 기본적인 패러다임이 도움말의 OOP 설명에서 다루어지지 않는다는 사실에 놀랐습니다.
이는 직접적인 OOP 기능이라기보다는 프로그래밍 트릭입니다.
집계와 관련하여:
객체 지향 프로그래밍에서 집계(구성 또는 포함이라고도 함)는 중첩을 통해 기존 클래스에서 새로운 클래스를 만드는 기법을 말합니다. 집계는 종종 "자동차에는 차체, 바퀴, 엔진이 있다"는 식으로 '멤버십 관계'라고도 합니다.
새 클래스의 중첩된 객체는 일반적으로 비공개로 선언되어 해당 클래스로 작업하는 애플리케이션 프로그래머가 접근할 수 없습니다. 반면에 클래스 작성자는 기존 클라이언트 코드를 방해하지 않고 이러한 객체를 수정할 수 있습니다. 또한 런타임에 중첩된 객체를 교체하면 프로그램의 동작을 동적으로 변경할 수 있습니다. 상속 메커니즘은 컴파일 단계에서 검사되는 파생 클래스에 대한 제한이 설정되어 있기 때문에 이러한 유연성이 없습니다.
통합을 기반으로 외부 객체에 할당된 작업이 이러한 종류의 작업을 해결하는 데 특화된 내부 객체에 위임되는 위임 방법이 구현됩니다.
http://ru.wikipedia.org/wiki/Агрегирование_( 프로그래밍)
구조체에 대한 도움말을 열고 구조체에 대한 유형 변환도 읽어보세요.
메서드의 멤버는 처음부터 사용할 수 있었습니다. 왜 제거하려고 하나요?
연결 및 기타 수업 연결 방법.
하나의 포인트:
m_size.
일반적인 명명 규칙에서 접두사 m_은 클래스 데이터 멤버에 접두사로 붙습니다. 주로 메서드에서 지역 변수와 클래스 데이터를 명시적으로 구분하기 위한 것입니다.
구조체에서 함수를 작성할 수 있나요? 아마도 클래스를 가리키는 포인터일 것입니다 - 저는 그것을 보았고, 시도해 보았지만 모르는 것이 좋습니다.
스타일러를 통해 코드가 실행되지 않는 이유는 무엇인가요?
초보자는 읽기가 어려울 것이며, 그는 ME에서 한 스타일을보고 기사에서 다른 스타일을 봅니다.
ZY 이 기사는 클래스 연결 문제를 밝히지 않습니다.
물론 일반적으로 OOP는 복잡한 주제이므로 간단한 언어로 설명하기는 쉽지 않지만 어딘가에서 시작해야합니다.
용도가 무엇인가요? 패턴은 맞지만 이것은 초보자의 수준이 아닙니다.
잠시만요:
m_size.
일반적인 명명 규칙에서 접두사 m_은 클래스 데이터 멤버에 붙습니다. 주로 메서드에서 지역 변수와 클래스 데이터를 명시적으로 구분하기 위한 것입니다.
m_ 접두사는 MFC에서 프로그래밍할 때 사용되었으며, 비공개 및 보호 변수에 적용되었으며, 다른 "일반적으로 허용되는" 규칙은 없습니다. MFC가 사라진 후 모든 사람들은 이 멍청한 m_에 대해 잊어버렸습니다(감사합니다)). 믿기지 않는다면 예제를 다운로드하여 직접 확인해 보세요(MFC에 대한 섹션도 있습니다) http://archive.msdn.microsoft.com/vcsamples.
접두사 m_는 MFC에서 프로그래밍 할 때 사용되었으며 개인 및 보호 된 변수에 적용되었으며 다른 "일반적으로 허용되는"규칙은 없습니다. MFC가 사라진 후, 이 모든 멍청한 m_는 잊혀졌습니다, 감사합니다.) 믿지 않으시는 분들은 예제를 다운로드하여 직접 확인해 보세요(MFC에 대한 섹션도 있습니다) http://archive.msdn.microsoft.com/vcsamples.
아니요. При чем тут MFC? https://ru.wikipedia.org/wiki/%D0%92%D0%B5%D0%BD%D0%B3%D0%B5%D1%80%D1%81%D0%BA%D0%B0%D1%8F_%D0%BD%D0%BE%D1%82%D0%B0%D1%86%D0%B8%D1%8F
는 편리함 그 이상도 이하도 아닙니다. 모든 프로그래밍 회사마다 자체 규칙이 있을 수 있습니다.
매우 필요한 기사!
개발자에게 새로운 기사 카테고리를 만들 것을 제안합니다. "프로그래밍의 기초(이론)와 같은 것"....