我正在尝试为类使用一些编译时const值,我正在使用constexpr / const,但我不喜欢一些事实,即某些将在hpp中,而某些在.cpp中。
我已经阅读了与字符串与constexpr不兼容的解释,但是 不是把所有这些都放在同一个地方的伎俩吗? 奇怪的是,在现代C ++ 11/14中,你必须在两个不同的位置声明它们。:) 谢谢
// test.hpp
class Test
{
// initialization values are located clear in the header
static constexpr int a_{10};
static constexpr int b_{20};
// we must go to the cpp file to see this string value
static const std::string str_;
};
// test.cpp
const std::string Test::str_{"abc"};