Previous Lecture lect06 Next Lecture

Relevant topics in the textbook:

Data Structures and Other Objects Using C++ Chapter 6.1

Template functions

#include <iostream>

using namespace std;


template<class T>
T maxValue(T x, V y){
	if (x > y) {return x;}
	else {return y;}
}


int main() {
	cout << maxValue(1, 2) << endl;
	cout << maxValue(1.3, 1.5) << endl;
	cout << maxValue('a', 'b') << endl;

	return 0;
}
#include <iostream>

using namespace std;

void printArray(int *arr, size_t s){
	cout << arr << endl;
	for(int i=0; i < s; i++){
		cout << "Array element: " << i << " is : " << arr[i] << endl;
	}
}

void fillArrayConst(int *arr, size_t s, int init_val){
	cout << arr << endl;
	for(int i=0; i < s; i++){
		arr[i] = init_val;
	}
}

void fillArrayIncr(int *arr, size_t s, int init_val){
	cout << arr << endl;
	for(int i=0; i < s; i++){
		arr[i] = init_val+i;
	}
}

int main() {

	size_t a = 10;
	char *v = new char[a];
	cout << v << endl;
	fillArrayConst(v, a, 'a');
	printArray(v, a);

	delete [] v;
	return 0;
}
#include <iostream>

using namespace std;

template<class T>
void fillArrayIncr(T *arr, size_t s, T init_val);

template<class T>
void printArray(T *arr, size_t s){
	for(int i=0; i < s; i++){
		cout << "Array element: " << i << " is : " << arr[i] << endl;
	}
}

template<class T>
void fillArrayConst(T *arr, size_t s, T init_val){
	for(int i=0; i < s; i++){
		arr[i] = init_val;
	}
}

template<class T>
void fillArrayIncr(T *arr, size_t s, T init_val){
	for(int i=0; i < s; i++){
		arr[i] = init_val+i;
	}
}

int main() {
	size_t a = 10;
	int *v = new int[a];
	cout << v << endl;
	fillArrayIncr(v, a, 1);
	printArray(v, a);

	char *w = new char[a];
	cout << w << endl;
	fillArrayIncr(w, a, 'a');
	printArray(w, a);

	delete [] v;
	delete [] w;
	return 0;
}