Articles of comparaison de

Pourquoi comparer si un Unsigned Int> = 0 est une «comparaison sans point»?

J’ai eu l’avertissement: Pe186 “Comparaison sans but de unsigned int avec zéro” quand j’ai essayé de comstackr le code suivant: for(clLoop = cpLoopStart; clLoop >= 0; clLoop–) { //Do something } Je ne comprends pas pourquoi. Je pourrais comprendre, si je recherchais une valeur inférieure à zéro, puisqu’un unsigned int ne peut jamais être négatif. […]

Quelle est la différence entre “some” == “some \ 0” et strcmp (“some”, “some \ 0”) en c ++?

Quelle est la différence entre “some” == “some\0” et strcmp(“some”,”some\0″) en c ++? Pourquoi if(“some” == “some\0”) renvoie-t-il false et if(!strcmp(“some”,”some\0″)) renvoie true ?

C ++ chaîne et comparaison littérale de chaîne

Donc j’essaye simplement de faire un std::ssortingng == “ssortingng-literal” qui fonctionnerait très bien, sauf que je crée ma chaîne avec std::ssortingng str(strCreateFrom, 0, strCreateFrom.find(‘ ‘)); et find renvoie ssortingng::npos maintenant les deux contiennent la chaîne “submit” cependant == renvoie false, maintenant je l’ai réduit au fait que les tailles sont “différentes” alors qu’elles ne le […]

Adresse de chaîne constante

J’ai plusieurs constantes de chaîne identiques dans mon programme: const char* Ok() { return “Ok”; } int main() { const char* ok = “Ok”; } Est-il garanti qu’ils ont la même adresse, c’est-à-dire, puis-je écrire le code suivant? J’ai entendu dire que GNU C ++ optimisait les chaînes pour qu’elles aient la même adresse. Puis-je […]

Puis-je utiliser! = Et == en C ++ pour comparer des chaînes sans écrire moi-même?

Quelle est la différence entre C et C ++ dans la comparaison de chaînes en d’autres termes? Je viens du camp ‘C’. J’ai vu un programme utiliser == pour comparer des chaînes, j’ai essayé de trouver son programme de surcharge, mais je n’en ai pas trouvé. Cela signifie-t-il que C ++ traite avec ssortingng (char […]

Fonction de comparaison utilisant des valeurs

Voici une tentative pour créer un comparateur personnalisé pour la classe Foo . Il appliquera quelques transformations aux membres puis les comparera lexicographiquement: struct Foo { std::ssortingng s; float x; std::vector z; std::unique_ptr<std::deque> p; friend bool operator<(const Foo& lhs, const Foo& rhs) { auto make_comparison_object = [](const Foo& foo) { return std::forward_as_tuple( foo.s, -foo.x, std::accumulate( […]

De quelle manière les fonctions des membres peuvent être comparées les unes aux autres?

Je voudrais savoir si je peux comparer 2 fonctions membres avec l’opérateur “<". Je peux faire "==" mais je ne peux pas l'utiliser dans le cas ci-dessous. J'ai essayé de les faire disparaître * mais cela ne fonctionnera pas non plus. template class CallBack2 : public ICallBack2 { protected: Receiver* receiver; void(Receiver::*function)(Sender*); Sender* sender; public: […]

Pointeur sur les fonctions membres – C ++ std :: list

Comment puis-je passer un pointeur sur une fonction membre à std :: list.sort ()? Est-ce possible? Merci struct Node { uint32_t ID; char * Value; }; class myClass { private: uint32_t myValueLength; public: list MyQueue; bool compare(Node * first, Node * second); bool doStuff(); } bool myClass::compare(Node * first, Node * second) { unsigned int […]

Pourquoi mettre la constante avant la variable dans une comparaison?

J’ai remarqué depuis un moment la syntaxe suivante dans certains de nos codes: if( NULL == var){ //… } ou if( 0 == var){ //… } et des choses similaires. Quelqu’un peut-il expliquer s’il vous plaît pourquoi la personne qui a écrit ceci a-t-elle choisi cette notation au lieu de la méthode courante var == […]

comparaisons de pointeurs “<” avec un après le dernier élément d'un object tableau

Je sais que les comparaisons de pointeur avec < sont autorisées dans le standard C que lorsque les pointeurs pointent sur le même espace mémoire (comme un tableau). si on prend un tableau: int array[10]; int *ptr = &array[0]; comparer ptr à array+10 autorisé? Le array+10 pointeur est-il considéré en dehors de la mémoire du […]