检查模板参数的类型约束

时间:2016-12-29 13:43:50

标签: c++ templates constructor static

阅读“为什么我不能为我的模板参数定义约束?”来自Isocpp FAQ我阅读了下面提供的几行代码。我主要理解代码的作用,但我对<input type="checkbox" [ngModel]="task.taskStatus" (click)="$event.stopPropagation()" (ngModelChange)="changeTaskStatus($event)" /> 结构中的构造函数没有任何意义:

Can_copy

template<class Container>
void draw_all(Container& c) {
            typedef typename Container::value_type T;
            Can_copy<T,Shape*>(); // accept containers of only Shape*s
            for_each(c.begin(),c.end(),mem_fun(&Shape::draw));
}

问题对静态成员函数template<class T1, class T2> struct Can_copy { static void constraints(T1 a, T2 b) { T2 c = a; b = a; } Can_copy() { void(*p)(T1,T2) = constraints; } }; 的函数指针的定义如何触发所需的类型检查?

0 个答案:

没有答案