개인 C++ 프로젝트에서 작업 중입니다. 그 중 하나는 연락처 정보를 저장하는 것입니다. 주소에 관해서는 국가가 약어 형식으로 저장되기를 원합니다.상태 입력을 약어로 변환하기
나는 상태의 전체 이름의 문자열 입력을 받아들이고 2 문자 상태 약어의 문자열 값을 반환하는 메서드를 만들고 있습니다. 그 일을하는 가장 좋은 방법에 관해서는 친구들과 브레인 스토밍을했다고합니다. 현재로서는 'A'로 시작하는 주를 마쳤습니다. 그러나 다른 47 개 주를 통과하기 전에이 질문을함으로써 브레인 스토밍을 확대하고 싶었습니다. 이것을 달성하는 "더 좋은"또는보다 효율적인 방법이 있다면? 지금까지 내 기능을 보아라.
std::string Address::formatStateInput(std::string stateInput){
char firstLetter = toupper(stateInput.at(0)); //makes first character capital for easy checking
if(firstLetter == 'A'){
char letterToCheck = toupper(stateInput.at(3)); //makes fourth character capital for easy checking
//Alabama
if (letterToCheck == 'B'){
return "AL";
}
//Alaska
else if (letterToCheck == 'S'){
return "AK";
}
//Arizona
else if (letterToCheck == 'Z'){
return "AZ";
}
else{
return "NULL";
}
}
else{return "NULL";}
}
메서드에 전달한 문자열의 예를 들어 보겠습니다. – 0x499602D2
메소드를 통과 할 문자열은 "알라바마"와 같이 미국 50 개국 중 하나의 이름입니다 (모든 국가를 수용 할만큼 충분히 멀리 있지는 않음). –