0
私はVisual Studioでwebrtcコードをコンパイルしようとしていますが、このエラー(type_traits.hから)に対して実行しています。コードは次のとおりです。Visual StudioのコンパイラエラーC2228 2035
// Determines if the given class has zero-argument .data() and .size() methods
// whose return values are convertible to T* and size_t, respectively.
template <typename DS, typename T>
class HasDataAndSize {
private:
template <
typename C,
typename std::enable_if<
std::is_convertible<decltype(std::declval<C>().data()), T*>::value &&
std::is_convertible<decltype(std::declval<C>().size()), std::size_t>::value>::type* = nullptr>
static int Test(int);
template <typename>
static char Test(...);
public:
static constexpr bool value = std::is_same<decltype(Test<DS>(0)), int>::value;
};
エラーは次のとおりです。
エラーC2228が、私はそれので、このテンプレートを再書き込みするにはどうすればよいクラス/構造体/共用体に
- を持っている必要があります「.dataセクション」の左ビジュアルスタジオ2015コンパイラでコンパイルしますか?
あなたまたは(webrtc)はどのようにこのクラスを使用しましたか?どこでエラーが発生しますか? –
その正確なコードを単に貼り付けるだけで( '#include'を追加する)VS2015でうまくコンパイルできます。多分、他のコードがあなたのやり方になっていますか? –
KompjoeFriek
何ができるのでしょうか?いくつかのコンパイラオプション? – Sean