template<typename T> void function1(T* begin ) { }
/* First instantiated from: insights.cpp:5 */
#ifdef INSIGHTS_USE_TEMPLATE
template<>
void function1<int>(int * begin) { }
#endif
template<typename T> void function2(T begin ) { }
/* First instantiated from: insights.cpp:6 */
#ifdef INSIGHTS_USE_TEMPLATE
template<>
void function2<int *>(int * begin) { }
#endif
int main(void) {
int * pointer;
function1 (pointer);
function2 (pointer);
}
//: C05:FuncDef.cpp
#include <iostream>
using namespace std;
template<class T> T sum(T* b, T* e, T init = T()) {
while(b != e)
init += *b++;
return init;
}
int main() {
int a[] = { 1, 2, 3 };
cout << sum(a, a + sizeof a / sizeof a[0]) << endl; // 6
} ///:~
std::vector < std::vector <int> > pixels;
pixels.resize(h, std::vector <int> (w));