Pour C++, comment accepter les arguments CLI ou stdin? Par exemple, disons que j'ai une fonction foo()
que je veux appeler sur un nombre variable d'arguments. Par exemple, disons que j'ai une fonction foo()
. Pour args standards, j'utilise simplement quelque chose comme:Modèle de conception pour accepter les arguments stdin OU CLI
int main(int argc, char* argv[]) {
if (argc < 2) {
std::cout << "usage goes here.\n";
} else {
for (int i; i < argc; ++i) {
foo(argv[i]);
}
}
}
Mais s'ils me les a envoyées via stdin et canalisé les paramètres à ma demande? Existe-t-il un moyen de détecter et d'accepter/gérer les deux? Qu'est-ce qu'un modèle de conception efficace pour faire cela en C++ moderne (C++ 11 et au-delà)?
Je suis intéressé par le modèle de conception/mise en œuvre de l'échantillon. N'hésitez pas à faire référence à une bibliothèque qui le fait (Boost?) Mais s'il vous plaît partager/expliquer un exemple de mise en œuvre.
J'ai essayé upvoting mais je suis trop Nouveau. Marqué comme accepté. Je vous remercie. –