나는 밀도, 원자량 등과 같은 속성을 가진 가스들을 가지고있다. 기본적으로 나는 프로그램에 쉽게 접근 할 수있는 명명 된 가스를 추가 할 수있는 컨테이너를 원한다. . 나는 파생 클래스와 함께이 일을 선호 될 수있다 생각컨테이너에있는 C++ 명명 된 요소들
class gases
{
class gas
{
double mass;
double density;
};
gas h2o;
gas co2;
};
: 나는 종류의 등이 사용하여 수업을 할 수 있습니까? 베이스 클래스 가스에서 h2o를 유도합니까? 그러나 나는 그것을 구현하는 방법에 대해 완전히 확신 할 수는 없으며 또한 그것이 내가 찾고있는 것이라고 생각하지 않는다. 내가 만족스럽지 못한 점은 클래스 정의에 이미 모든 가스를 선언해야한다는 것입니다. 나 (의사 코드) 같은 것을 할에 그것은보다 직관적 인 것 : 나는 내가 객체 이름을 추가 할 수있는 용기를 찾고 있어요 즉
object gas (mass,density)
container gases
gases.append(h2o(m,rho))
cout << "the atomic mass of water is" << gases.h2o.mass << endl;
.
또 다른 불만족스러운 해결책은 가스 대상물의 벡터를 만드는 것이지만 가스를 첨가 한 순서를 기억해야합니다.
는 소리 [표준 : :지도] (http://en.cppreference.com/w/cpp/container/map). –
'std :: map gases;가 작동해야합니다. _ "명명 된 객체"로 정확히 무엇을 의미하는지 더 잘 정의 할 수 있습니다. –
user0042
예,'std :: map'은 내가 찾고있는 것을하고있는 것처럼 보인다. 고마워. 메타 질문 : 그래도이 질문은 즉석 투표로 결정 되었습니까? 나는 그렇게해서는 안된다는 말은 아니며, 단지 왜 그 이유를 이해하기를 원하므로 앞으로 더 나은 질문을 제기 할 수 있습니다. – storluffarn