支持初始化和自定义构造函数

时间:2017-08-23 08:42:00

标签: c++ c++11 c++14

以下结构

id = "gridview"

与大括号初始化结合使用,例如,


 if(grid==null) Log.d("GRID","NULL);
 else if(iAdapter==null)Log.d("Adapter","null"); 
 else Log.d("All","Good");

以及

template<typename T, int rows, int cols>
struct ScalarCustomType
{
  T data[rows][cols];
}

在g ++和clang ++中使用c ++ 11/14支持编译时。然而,后者警告说在第二种情况下缺少括号。

使用此结构的库需要存在自定义构造函数

ScalarCustomType<int,3,3> B{{{1,2,3},{4,5,6},{7,8,9}}};

以下列方式调用

ScalarCustomType<int,3,3> B{1,2,3,4,5,6,7,8,9};

如何重新实现自定义构造函数删除的默认大括号初始化程序?

提前感谢你,祝福你, 的Matthias

0 个答案:

没有答案