#ifndef __TEST__
#define __TEST__
namespace std
{
template<typename T>
class list;
}
template<typename T>
void Pop(std::list<T> * l)
{
while(!l->empty())
l->pop();
}
#endif
dan menggunakan fungsi itu di main saya. Saya mendapatkan kesalahan. Tentu saja, saya tahu bahwa ada lebih banyak params template untuk std::list
(pengalokasi saya pikir). Tapi, itu intinya. Apakah saya harus mengetahui deklarasi templat lengkap dari kelas templat untuk dapat meneruskannya mendeklarasikannya?
EDIT: Saya tidak menggunakan pointer sebelumnya - itu adalah referensi. Saya akan mencobanya dengan pointer.
__TEST__
adalah pengidentifikasi yang dilindungi undang-undang, jangan gunakan itu .
std::allocator<T>