MyQueue.cpp
// main.cpp #include "mbed.h" #include "MyQueue.h" int main() { MyQueue<int> queue1; MyQueue<char> queue2; return -1; }
// MyQueue.h template<class T> class MyQueue { public: MyQueue(T x = 0); void push(T x); T pop(); };
// MyQueue.cpp #include "MyQueue.h" template class MyQueue<int>; template class MyQueue<char>; template<class T> MyQueue<T>::MyQueue(T x) { } template<class T> void MyQueue<T>::push(T x) { } template<class T> T MyQueue<T>::pop() { return 0; }