consolidate all repos to one for archive

This commit is contained in:
2025-01-28 13:46:42 +01:00
commit a6610fbc7a
5350 changed files with 2705721 additions and 0 deletions

View File

@@ -0,0 +1,30 @@
#ifndef EXAMPLE23_STACK_H
#define EXAMPLE23_STACK_H
template <typename T>
class Stack {
public:
int top;
T arr[10];
Stack() : top(-1) {
}
void push(T value) {
arr[++top] = value;
}
T pop() {
return arr[top--];
}
/*
template <typename T1> // member template
Stack<T>& operator= (Stack<T1>& stack) {
for (int i = 0; i <= stack.top; i++) {
arr[i] = stack.arr[i];
}
top=stack.top;
return *this;
}
*/
};
#endif //EXAMPLE23_STACK_H

View File

@@ -0,0 +1,15 @@
#include <iostream>
#include "Stack.h"
int main() {
Stack<int> s1,s2;
Stack<float> s3;
s2.push(2);
s2.push(3);
s2.push(4);
s1 = s2; // OK
std::cout << s1.pop() << " " << s1.pop() << std::endl;
//s3 = s2; // ERROR without member templates
//std::cout << s3.pop() << " " << s3.pop() << std::endl;
return 0;
}