eaten
부울 필드가있는 Doughnut
클래스가 있습니다. 나는 부울을 전역 변수로 만들 필요가 있지만, 많은 사람들이 "먹을"수 있고 그렇지 않은 것들을 많이 만들 수 있도록 로컬에 있어야합니다. 도넛이 그래픽으로 사라지면 먹을 때 사라져야합니다.로컬/전역 부울 문제
글로벌 설정 문제는 내 도넛이 먹을 때 "먹는"것으로 표시되며 먹는다면 사라지지 않을 것입니다. 이 문제를 어떻게 해결할 수 있습니까?
eaten
부울 필드가있는 Doughnut
클래스가 있습니다. 나는 부울을 전역 변수로 만들 필요가 있지만, 많은 사람들이 "먹을"수 있고 그렇지 않은 것들을 많이 만들 수 있도록 로컬에 있어야합니다. 도넛이 그래픽으로 사라지면 먹을 때 사라져야합니다.로컬/전역 부울 문제
글로벌 설정 문제는 내 도넛이 먹을 때 "먹는"것으로 표시되며 먹는다면 사라지지 않을 것입니다. 이 문제를 어떻게 해결할 수 있습니까?
도넛 당 부울이 있습니다.
std::map<Doughnut, bool> Doughnuts;
)
class Doughnut
{
bool m_bEaten;
};
또는 아마 당신은 당신이 매핑을 가질 수 있도록, 도넛의 정보를 저장하지 않는 : 당신이 도넛 클래스가있는 경우
, 멤버 플래그를 추가 당신이 10 도넛을 알고있는 경우
그러나 당신은 당신이 doughnu 플래그를 개최 정적 배열을 가질 수 :) 도넛에 대한 운영자 <을 구현하기 위해
이 필요하거나 것이다
std::vector<bool> atenDoughnuts;
또는 사용 템플릿 당신의 도넛은 컴파일 시간을 먹고 메타 프로그래밍을 : 당신이 컴파일시 사용 동적 컨테이너에서 도넛의 번호를 모르는 경우,
bool eatenDoughnuts[10]; // Initialize properly.
// Eat any doughnut you like:
eatenDoughnuts[2] = true;
// Check if you have eaten doughnut number 2:
if(eatenDoughnuts[2])
{
// Pure doughnut number 2.
}
을 또는 : t은 먹 ;)
질문은 편집되었으므로 도넛 클래스가 있어야합니다. 그래서 여기 간다 :
#include <vector>
class Doughnut
{
public:
enum Kind {VANILLA, CHOCOLATE}; // The kind of your doughnut.
Doughnut(Kind k = VANILLA) // VANILLA is the default.
: kind(k), eaten(false) {}
void eat() { eaten = true; } // We luv eating doughnuts.
bool isEaten() { return eaten; }
private:
Kind kind; // The kind of your doughnut.
bool eaten; // Has anyone eaten it yet?
};
int main()
{
// Your delicious doughnuts package :)
std::vector<Doughnut> deliciousDoughnuts;
// Go buy some delicious doughnuts.
deliciousDoughnuts.push_back(Doughnut(Doughnut::VANILLA));
deliciousDoughnuts.push_back(Doughnut(Doughnut::CHOCOLATE));
deliciousDoughnuts.push_back(Doughnut(Doughnut::VANILLA));
// You love delicious chocolate doughnut? EAT IT!
deliciousDoughnuts[1].eat();
// Check have you drooped it down or you are good!
if(deliciousDoughnuts[1].isEaten())
{
// Poor chocolate doughnut...
}
}
나는 좀 종류의 오늘이야, 나는 당신이 Doughnut
클래스가 가정입니다
그래, 이것에 대해 생각해봤을 때 불린 배열을 만들 수 있을까? – himmerz
@himmerz : 도넛 컬렉션이 필요하다고 생각합니다. – reinierpost
물론, 당신은 아마 도너츠의 배열을 원할 것입니다. –
). 클래스에 boolean
멤버를 추가하고 값을 변경할 수있는 함수를 만듭니다.
먹을 때 도넛이 사라져야한다면, 정말로 깃발을 넣으시겠습니까 ? 그것은 당신이 단지 을 파괴하기를 원한다고 생각합니다. 그래픽으로 MVS 등을 사용하는 경우 시각화는 관찰자가 처리하고 도넛의 소멸자는 관찰자에게 실종되었음을 알립니다. View 객체 은 그래픽을 처리합니다 (객체가 화면에서 지워지면 ).
도넛? –
이것이 농담으로 여겨지면 나는 이해하지 못합니다. – fredoverflow
당신의 질문이 더 잘 표현되어야한다고 생각합니다. –