我想做一个通用的数组函数。在我的 API 中,我有通用容器,我需要将其转换为正确的类,但我想让它通用
template<class T>
void UT::printArray(CCArray* arr, T type)
{
CCObject *aIt = NULL;
CCARRAY_FOREACH(arr,aIt )
{
T *aElm = static_cast<T*>(aIt );
int col = aElm ->getColNum();
int row = aElm ->getRowNum();
CCLOG("col:%d row:%d",col,row);
}
}
这编译不正确,而且每次调用此函数时我都需要创建新的 T 对象。什么是正确的方法?