10
仮想関数はconstexpr
にはできません。しかし、関数が暗黙的に継承によって仮想である場合、私が試したコンパイラはそれについて文句を言わない。ここで暗黙的に仮想constexpr関数
はサンプルコードです:
class A
{
virtual void doSomething() {}
};
class B : public A
{
constexpr void doSomething() override {} // implicitly virtual constexpr
// but no compilation error
};
class C : public A
{
virtual constexpr void doSomething() override {} // explicitly virtual constexpr
// compilation error
};
私はgcc 7.2.0
とでそれを試してみました。clang 5.0.0
これらのコンパイラはこの点で標準に準拠していないか、暗黙的に仮想関数constexpr
が許可されていますか?
[打ち鳴らすのこのバージョンは、文句を言うようだ](http://coliru.stacked-crooked.com/a/a3d1b1ef2348d2c2)右である – Borgleader
してくださいダブルチェック打ち鳴らす –
、私も、打ち鳴らす – MaxV37