c_NEXT
で定義されていclass AskBase
ます:
struct Status {
static auto constexpr c_ROOT {-999};
static auto constexpr c_PREVIOUS {-1};
static auto constexpr c_NEXT {1};
static auto constexpr c_EOF {999};
};
後でc_NEXT
使用されますtemplate<typename Container> class AskUI
auto run(){
auto status = AskBase::Status::c_NEXT;
for (typename Container::iterator ii=m_asks.begin();
ii!=m_asks.end();
ii=(AskBase::Status::c_ROOT==status)? m_asks.begin():
(AskBase::Status::c_PREVIOUS==status)?(m_asks.begin()==ii?m_asks.begin():ii-1):
(AskBase::Status::c_NEXT==status)?ii+1:
m_asks.end())
status = (*ii)->ask_user();
return (AskBase::Status::c_NEXT==status);
}
()?
3 つの式とreturn
ステートメント clang++ レポートを参照すると、次のようになります。
error: invalid operands to binary expression ('const std::initializer_list<int>'
and 'std::initializer_list<int>')
エラーを解決するための提案。
コマンドの使用:
clang++ -std=c++1z