2013-10-16 7 views
0

를 대문자로 그것은 위의 코드를 사용하여 나의 사전에서 단어를 unfindable하게 만든다. 나는 단어를 대문자로 만든 다음 그것을 검색 할 것이므로 대문자로 검색한다는 단어를 변경했다. . 내 질문은 어떻게 내 코드가 첫 번째 문자 대문자로 대문자로 만들 수 있습니다.나는 다음과 같은 한

+1

실행중인 문장을 이해하기 어렵습니다. 바꿔 말하다. – Adam

+0

* local variable *이라는 개념을 알고 있습니까? –

+0

두 번째 아담. 더 중요한 것은 질문 일 수 있습니다. 그것이 고유 명사라는 것을 안다면 왜 사전을 탐색 할 때마다 그것을하는 대신 객체를 만들 때 그것을 대문자 화하지 않을까요? – ChiefTwoPencils

답변

1

두 번째 단어 getter에서 대문자를 사용하여 표시 할 수 있습니다. 이 getter는 저장된 단어를 수정하지 않습니다.

string ProperNoun::GetWordForDisplay() { 
    string s = word; 
    s[0] = toupper(s[0]); 
    return s; 
} 

또는 사전 검색에 사용할 두 번째 단어 게터를 추가 할 수 있습니다. 이 getter는 단어의 소문자 사본을 반환 할 수 있습니다.

string ProperNoun::GetWordForSearch() { 
    string s = word; 
    std::transform(s.begin(), s.end(), s.begin(), ::tolower); 
    return s; 
}