Wenn ich meinen Code ausführen dann geht Compiler zu else Teil und exceut sowohl if und else Anweisung innerhalb der else Teil. Warum?Sowohl if als auch else Teil werden ausgeführt
Antwort
Das scheint ... (vorübergehend mein tactfulness Attribut zu erhöhen, um Straftaten zu vermeiden) ... eher unwahrscheinlich :-)
Es ist wahrscheinlich, weil der Code mehr als einmal eingegeben wird, und Sie nur unter der Annahme, es führt beide Teile wegen der Ausgabe durch.
Mein Rat wäre, den Code in den äußeren else
zu ändern zu sein:
LOG(Severity_Error)<<"Starting inner if ";
if(subNode->getXmlId() == iXmlId)
{
LOG(Severity_Error)<<"2 ";
subNode->setbSelected(!subNode->bSelected());
}
else
{
LOG(Severity_Error)<<"3 ";
subNode->setbSelected(false);
}
LOG(Severity_Error)<<"Ending inner if ";
Sie sollten nicht sieht beiden Blöcke ohne ein dazwischenliegendes Ende Ausführen/Start-Nachricht eingestellt.
siehe meinen obigen vollständigen Code –
@SubhamGupta, Ihr voller Code hat das gleiche Problem wie Ihr ursprünglicher Code. Es gibt nichts darin zu beweisen, dass sowohl die if- als auch die else-Blöcke für eine gegebene Iteration ausgeführt werden. Bitte tun Sie, was ich vorgeschlagen habe, und versuchen Sie es erneut - Sie werden mit ziemlicher Sicherheit feststellen, dass Sie den Programmfluss einfach nicht vollständig verstehen (was das unglaublich unwahrscheinliche Ereignis eines Compiler-Fehlers verhindert). – paxdiablo
- 1. Ist es möglich, sowohl if als auch sonst Teile einer if --- else-Steueranweisung auszuführen?
- 2. Sowohl die if-Anweisung als auch die else if-Anweisungen laufen
- 3. else-Anweisung wird ausgeführt, wenn if ausgeführt werden soll
- 4. Python: IF ELSE beide ausgeführt
- 5. PHP if (...) readfile; else readfile gibt sowohl
- 6. Wenn Block sowohl If-und Else-Anweisungen
- 7. Sowohl if als auch andere Anweisungen, die JavaScript ausführen
- 8. ELSE Stmt wird ausgeführt, auch wenn IF Stmt in Python ausgeführt wurde
- 9. Code führt sowohl if als auch andere aus wenn if ist true
- 10. Else Teil nie in Crystal Report Formelfeld ausgeführt zu werden
- 11. if/if else/else
- 12. Wie führe ich sowohl if als auch else Blöcke basierend auf einer Bedingung in if-statement Block aus?
- 13. Wie Spring-Start-Anwendung sowohl als eine Web-Anwendung als auch eine Befehlszeilenanwendung ausgeführt werden?
- 14. Andere else if-Anweisung nicht ausgeführt
- 15. Sind "elseif" und "else if" auch komplett?
- 16. MySQL Abfrage IF EXISTEN ELSE IF ELSE
- 17. TypeError: sowohl int als auch float
- 18. If-Else Statement wird nicht korrekt ausgeführt.
- 19. Warum verwendet os.path sowohl '\' als auch '/'?
- 20. if/else-Anweisungen Cookies als Bedingung mit
- 21. Wie werden sowohl die Colorbox- als auch die Übermittlungsaktion für den einzelnen Übergabetyp ausgeführt?
- 22. Code ausführen, wenn eines der "if ... else if" ausgeführt wurde?
- 23. Wie werden sowohl Schlüssel als auch Werte eines Mappings abgebildet?
- 24. Sowohl preDebugBuild als auch preReleaseBuild werden von Gradle
- 25. Sowohl die benutzerdefinierte als auch die ursprüngliche Titelleiste werden angezeigt.
- 26. WebForms detailsview - werden sowohl Edit- als auch Insert-Vorlagen benötigt?
- 27. Aufräumen pathologisch verschachtelt "if {} else {if {} else {if {...}}}"
- 28. Beide If/Else-Anweisungen ausgelöst werden
- 29. else-Anweisung in verschachtelten if-Anweisungen. Wie weiß dieser Code, welche else Anweisung ausgeführt werden soll?
- 30. sowohl IF und ELSE-Klausel sehr ähnlich HTML Mit
Debuggen Sie es, lernen Sie, Breakpoints zu verwenden. Wir werden nie wissen, was bMultipleSelect() und subNode-> getXmlId() – Asesh
zurückgibt, es ist nur eine Variable –
Zeigen Sie uns ein vollständiges Beispiel mit den Daten, wo dies geschieht. –