此代碼使用GNU gcc編譯器進行編譯,而如果使用Visual Studio 2008,則不會編譯。爲什麼這段代碼不能用MS編譯器編譯?
錯誤sas:「error C2143:syntax error:missing';'之前「*」
ARBOL :: Nodo *是一個指向內部ARBOL類別中,如果使用代碼塊+ GNU GCC編譯器在編譯工作正常。
template <class T>
Arbol<T>::Nodo<T>* Arbol<T>::Alta(Nodo<T>* &nodo,const T d) /////this line is highlited
{
return nodo;
}
這很奇怪,如果我拿出代碼和重新編譯,它在它下面跳三種功能和 拋出了同樣的錯誤使用此功能
template<class T>
Arbol<T>::Nodo<T>* Arbol<T>::BuscarDevolver(const T t)
{
Nodo<T>* nodo = new Nodo<T>;
return nodo;
}
第二個例子中的錯字? nodo? – kenny
只是重新編輯。 – HoNgOuRu