Bonjour,
En C/C++ la méthode couramment utilisée pour indiquer qu'un pointeur ne pointe sur aucun objet est de lui donner la valeur NULL.
Donc la méthode la plus logique pour indiquer que le paramètre n'existe pas est de passer NULL (on peut bien sur décider de faire autrement, mais pourquoi réinventer la roue).
D'autre part plutôt que de redéfinir plusieurs fonctions avec différents paramètres on peut définir des paramètres par défaut dans la déclaration de la fonction.
bool sendCellId(char * celltower0, char * lat=NULL, char * lon=NULL, bool addOrGet=false);
Ainsi sendCellId(celltower);
est équivalent à sendCellId(celltower,NULL,NULL,false);
Bien noter que la déclaration des paramètres par défaut doit être faite dans la déclaration de la fonction et non dans sa définition.
bool sendCellId(char * celltower0, char * lat=NULL, char * lon=NULL, bool addOrGet=false);
bool sendCellId(char * celltower0, char * lat, char * lon, bool addOrGet)
{
}