이 코드를 향상시키는 방법?
최적화하기 전에 벤치 마크하십시오. 조숙 한 최적화를하지 마십시오.
주요 요점을 넘어서 : 왜 최적화하고 싶습니까?
1) 퍼포먼스 관점에서 볼 때이 무시할 수있는 코드가 중요한 성능에 대해 정말로 염려한다면 Qt가 잘 최적화 된 프레임 워크에 비해 본질적으로 느리기 때문에 처음부터 Qt를 사용하지 않을 것입니다.
2) 성능에 관심이 없다면 가독성 및 유지 관리를 염두에 두어야합니다.이 경우 코드가 문제가되지 않습니다.
정확히 원하는 이유를 실제 사례로 제시하지 않았습니다. 이것은 나에게 많은 소박한 사용없이 학문적 인 질문처럼 느껴진다. 동기 부여에 대해 더 많이 아는 것은 흥미로울 것입니다.
최적화라고도하는 몇 가지 개선 항목이 코드에서 수행 될 수 있지만 다시 말하면 최적화를 위해 수행되지는 않지만 논리적 인 이유와 비슷합니다.
1) 프리 펜더는 나쁜 이름입니다. 일반적으로 영어로 "접두어"라고 불립니다.
2) 캐릭터의 QString이 아닌 QChar를 사용하고 싶습니다.
3) 마찬가지로 대체 할 경우 string'ish "공식 대신" '을 사용하고 싶습니다.
4) CoW (암시 적으로 공유 됨) 인 경우에도 값 의미에 반하는 참조 클래스를 전달할 것입니다.
5) 접두사는 항상 동일하므로 변수의 정의에 실제로 맞지 않으므로 인수를 사용하지 않습니다.
6) 명시 적으로 임시 변수를 만들 필요는 없습니다.
7) 함수를 인라인으로 만듭니다.
따라서이 같은 것을 쓰는 것 :
QByteArray restoreData(QByteArray data)
{
return QByteArray::fromHex(data.replace('x', ''));
}
또한 QString처럼 편의를 위해'제거 (QChar)'방법을 묻는 선택할 수 있습니다. 그러면 코드를 대체하지 않고 논리적으로 제거 할 수 있습니다. – lpapp