私は個人的な C++ プロジェクトに取り組んでおり、機能の 1 つは連絡先情報を保存することです。住所に関しては、州を省略形で保存したいと考えています。
州の完全な名前の文字列入力を受け入れ、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";}
}