主程式中
void iniGeometry( BlockLattice3D <T,DESCRIPTOR>& lattice,
LBunits<T> const& converter,
Dynamics<T, DESCRIPTOR>& bulkDynamics,
OnLatticeBoundaryCondition3D<T,DESCRIPTOR>& bc )
{
.....
}
頭檔案中
template<typename T, template<typename U> class Lattice>
class BlockLattice3D : public BlockStructure3D<T,Lattice> {
....}
結果編譯時出錯,顯示[C++ Error] E2451 Undefined symbol 'BlockLattice3D'
uj5u.com熱心網友回復:
BCB6, 這玩意兒太古老了。只聽說過。如果支持C++模板,但是支持程度不好的話,按它的語法格式修改吧。如果根本不支持模板的話,換編譯器吧。uj5u.com熱心網友回復:
可以試試找找泛型庫安裝下,在Delphi里,有個DGL泛型庫,支持Delphi7的,不知道CB6支持不支持。。。
uj5u.com熱心網友回復:
: public BlockStructure3D<T,Lattice>這個地方要模板引數要實化uj5u.com熱心網友回復:
上面說錯了
template <class T,template <class T>class r>
class BlockStructure3D
{
public:
T a;
};
template <class T, template <class U>class Lattice>
class BlockLattice3D : public BlockStructure3D <T,Lattice>
{
};
這樣可以通過,看看你的父類BlockStructure3D宣告
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/77362.html
標籤:基礎類
上一篇:c++題目
下一篇:C實作四叉樹
