2011-10-15 2 views

답변

14

char에 대한 포인터를 취 std::string의 생성자는 constexpr 없습니다. constexpr 함수에서는 constexpr 인 함수 만 사용할 수 있습니다.

+0

감사합니다. 전에는 몰랐습니다. – smallB

+2

+1이고 그 생성자가'constexpr '이 될 수 없다는 이유는 컴파일 타임에 수행 할 수없는 부작용 (즉 할당)이 있다는 것입니다. –

+0

그러나 이것이 (이 특별한 예) 비트가 어리석은 것이라고 생각하지 않습니까? 문자열 리터럴은 const입니다. 그래서 나는 string의 ctor가 constexpr로 만들어 져서 미래에 그런 구조를 허용해야한다고 생각합니다. – smallB

관련 문제