나는 현재 무작위로 아이템 (예 : 무기, 갑옷 등)을 생성하는 프로그램을 만들고 있으며, 전역 상수 벡터를 만들고 싶습니다. 항목. 이 2D 벡터를 다른 모든 클래스에서 사용할 수있는 헤더 파일에 저장하려고합니다 (수정할 수는 없으므로). 선언시 초기화해야합니다. 그러나 나는 항목 이름을 저장하는 2 차원 벡터를 사용하려면,선언에서 값이있는 2D 벡터 초기화하기
static const std::string v[] =
{
"1.0", "1.1", "1.2", "null"
};
const std::vector<std::string> versions(v, v+sizeof(v)/sizeof(v[0]));
이것은 1 차원 벡터 근무 :
나는 이전에 다음과 같은 사용.난 다음 그러나 그것은 내가 (크기와 같은()) 멤버 함수가 없다는 뜻 사용하여 시도했다 : 나는 또한 모두를 저장하는 클래스를 사용하지 않으
static const std::string g_wn_a[] = { "Spear", "Lance", "Jouster" };
static const std::string g_wn_b[] = { "Sword", "Broadsword", "Sabre", "Katana" };
const std::string* g_weapon_names[] = { g_wn_a, g_wn_b };
을 이름을 사용할 때마다 모든 이름을 저장하는 변수를 만드는 것이 비효율적이라고 생각하기 때문입니다.
아무도 내 문제를 해결할 수있는 방법을 알고 있습니까?