私がC++ 14ようstd::is_convertible<T, X>::value
リターンのタイプT
すべての可能なX
ためtrue
?すべてを変換できるタイプ?
答えて
我々はclass B {~B() = delete;}
を定義することができたよう。
我々は、任意のタイプのTのために、常にそのTを変換することができないために、少なくとも1つのタイプのXが存在することを結論付けることができます。
あなたは確かに1を自分で作ることができます。
#include <string>
#include <type_traits>
struct Foo
{
template <class T>
operator T();
};
int main()
{
struct Bar{};
static_assert(std::is_convertible<Foo, int>::value, "");
static_assert(std::is_convertible<Foo, std::string>::value, "");
static_assert(std::is_convertible<Foo, Bar>::value, "");
return 0;
}
私にそれを打つ。 C++ 17ではstd :: anyがありますが、より制限されています – Swift
void ....... – felix
すべてに変換可能! – StoryTeller
メタ関数は常にtrueを返すようにするために、あなたが望むすべてがある場合、あなたには、いくつかの超大型のメタ関数を記述し、いくつかのブール論理のプレースホルダを必要としているため、その後、私はちょうどテンプレートを罪と専門だろうと言います。
struct everything {};
namespace std {
template<typename X>
struct is_convertible<everything, X> : true_type {};
};
が、それはstd
名前空間に侵入し、テンプレートを破壊しつづけ開始していないので、確かに、this answerは、はるかに良いこれを実現しています。
そうでない場合は、いいえ、そのようなタイプではありません。少なくともあなたにとって有効なオブジェクトを生成するタイプはありません。
- 1. org.apache.camel.NoTypeConversionAvailableException:タイプ変換ができないタイプから変換する:
- 2. 型付きラケットすべてに変換するすべて(a)
- 3. arrylistタイプを変換する
- 4. Sqoop:BLOBタイプを変換するすべてのテーブルをインポートします
- 5. タイプ(Null)の型をタイプ(OleStr)に変換できません
- 6. Linuxコンパイルエラー - タイプ 'string'をタイプ 'string &&'に変換できません
- 7. タイプ 'System.String'のオブジェクトをタイプ 'Xamarin.Forms.View'に変換できません
- 8. タイプをタイプCに変換できません。#
- 9. すべてのタイプ(オーディオ*)をmp3に変換するには? FFMPEGを使用
- 10. タイプ間の変換機能はどこに置くべきですか?
- 11. タイプ変換器がこれらのタイプ間で変換できないため、タイプ 'System.String'からタイプ 'T'へのパラメータ変換が失敗しました
- 12. タイプキャスト&タイプ変換
- 13. タイプ変換VHDL
- 14. タイプxからタイプxに変換できませんか?
- 15. タイプ 'System.EventHandler'のオブジェクトはタイプ 'System.Windows.Forms.DataGridViewCellEventHandler'に変換できません
- 16. タイプ 'System.Int32'のオブジェクトは、 'System.Web.Security.Cryptography.Purpose'タイプに変換できません。
- 17. プロパティグリッド 'System.String'タイプのオブジェクトは 'x'タイプに変換できません
- 18. タイプ 'Data.TimeLineChartedDay []'のオブジェクトは、タイプ 'Data.TimeLineChartedDay []'に変換できません。
- 19. Subsonic: 'System.UInt64'タイプのオブジェクトは 'System.Int64'タイプに変換できません
- 20. "xxx"タイプのオブジェクトは "yyy"タイプに変換できません
- 21. 'System.Reflection.ParameterInfo'タイプのオブジェクトは 'System.Int32'タイプに変換できません
- 22. 変換できないタイプ。 android.app.fragmentをキャストできません
- 23. 'boost :: detail :: variant :: visitation_impl':2つのオーバーロードで、すべての引数タイプを変換できない
- 24. すべてのプログラムをアセンブリに変換できますか?
- 25. 互換性のないタイプ:コンテキストに変換できません
- 26. タイプ変換のエラー
- 27. Eclipse JDT ITypeBindingをタイプに変換する
- 28. NpgsqlテキストタイプをC#タイプに変換する
- 29. タイプをmyTypeに変換する
- 30. System.Drawing.PenをSkiaSharpタイプに変換する
あなたは、メタ関数は常にtrueを返すようにしたいですか、またはタイプは、実際にXのための有効なオブジェクトを生成するために? – StoryTeller