Le problème que je suis confronté est que ma classe Structure des données constructor
œuvres me permettant de déclarer la classe de longueur variable de parameters
:C++ Template VARIADIC Constructeur de la classe de travail avec le paramètre pack mais les fonctions ne
template<class T>
class Dynarray
{
private:
int size;
public:
template<class T, typename... Arguments>
Dynarray(T item,Arguments...)
{
size = sizeof...(Arguments);
}
}
Toutefois, si ajouter la fonction supplémentaire de membre public donc je peux ajouter plus à la classe comme ceci:
template<class T>
class Dynarray
{
private:
int size;
public:
template<class T, typename... Arguments>
Dynarray(T item,Arguments...)
{
size = sizeof...(Arguments);
}
/////////////////////////////////////////////////////////
template<class T, typename... Arguments>
void Dynarray<T>::AddGroup(T item, Arguments...)
{ //Errors C2838, C2059, C2334
size += sizeof...(Arguments);
}
/////////////////////////////////////////////////////////
}
Comment obtenir les codes d'erreur:
C2838 'AddGroup': illegal qualified name in member declaration
C2059 syntax error: '{'
C2334 unexpected token(s) preceding '{'; skipping apparent function body
Y at-il une différence quand il s'agit de modèles de classe entre Constructors
et Member Functions
comme ça? Connaissez-vous des solutions de contournement?
travaille sur ceci pour la dernière semaine presque sans arrêt et vous venez de sauver ma vie. Merci beaucoup! –