우리는 코드 일부를 C++ 03에서 C++ 14로 마이그레이션하고 있으며 성능상의 이점이있는 곳이라면 C++ 14 기능을 사용하고자합니다. 이제 우리 프로젝트 중 하나에서 열 이름과이 열 이름을 기반으로 구문 분석 CSV는 다음과 같이 하나 개의 헤더 파일에 선언되어있다 :constexpr 문자열과 const 문자열
const string ITEM_NAME = "Item Name";
const string ITEM_ID = "Item Id";
내가 위의 변경하면 내가 알고 싶은 어떤 의미의 performace 이득이 있는가 이런 상수의 수백이있다 코드는 다음과 같습니다.
constexpr string ITEM_NAME = "Item Name";
constexpr string ITEM_ID = "Item Id";
읽기 전용 메모리에 저장해야하기 때문에 바이너리에서 가질 수있는 constexpr?
컴파일러가 자동으로 오래된 C++ 03 코드를 최적화하고 const 변수를 읽기 전용 메모리에도 넣을 수 있습니까?이 노력은 가치가 없습니다.
주제 끄기 : 당신의 팀이'사용하여 std 네임 스페이스와 글로벌 네임 스페이스를 오염되는 것 같습니다;'헤더 또는 일부 매우 넓은 범위에서. 위험하고 어떤 장소에서 많은 어려움을 겪을 것입니다. – user4581301
아니요. 네임 스페이스 안에 이러한 모든 상수가 있습니다. csvconst – Kapil
하! "may be"대신에 "is"를 사용하도록 가르쳐주십시오. 게시하기 전에 잘못된 말에 고생하는 데 너무 많은 시간을 보냈습니다. 나는 서있다. – user4581301