Gute/sehr gute C++ Kenntnisse
-
Xin schrieb:
Die Tatsache, dass dies nicht Threadsafe ist, fällt bisher nicht ins Gewicht, weil die Klasse wie ein Singleton benutzt wird.
Was hat die Anzahl der Instanzen mit der Anforderung an thread safety zu tun?
-
Sone schrieb:
Xin schrieb:
Ich habe dann später für ein Bewerbungsgespräch vergleichbares vorbereitet und dabei diese Links verwendet:
Die 12 häufigsten ProgrammierfehlerDas ist Anfängerkram! Totaler Anfängerkram!
Setz das einem Informatiker vor, der frisch von der FH kommt und Du fragst Dich, was der in der Ausbildung gemacht hat.
Als Informatiker der Uni konnte es Dir vor wenigen Jahren noch passieren, dass derjenige nichtmals den Quelltext versteht, weil er noch nie programmiert hat. (sic)Ich kann nicht dafür garantieren, dass alle Unis inzwischen von den Studenten Scheine im Programmieren verlangen.
Sone schrieb:
Alles was blau ist, ist ein Ball, und alles was rund und grün ist, ist ein Ball. Ob etwas, dass rund und blau ist, ein Ball ist, ist nicht klar. Oder?
Kommt auf die Priorisierung an.
Man kann durchaus auch so interpretieren, dass ein Ball rund sein muss und die Farbe grün oder blau besitzen muss. So verstehen es die meisten Leute, weil Bälle ja gefälligst rund zu sein haben.List<int> list; list.Append(6); list.Append(5); list.Append(4); list.Append(3); list.Append(2); list.Append(1); /* ... */ /* Element 1 bis 3 löschen */ for(int i = 1; i <= 3; i++) { int x = list; list.Remove(x); }
Sone schrieb:
Der Laufindex der Schleife durchläuft die falschen Werte.
Das blöde ist, dass sich die Liste beim entfernen von list[1] verändert und sich Element 2 dann nicht mehr auf list[2] befindet.
Sone schrieb:
Außerdem: Gibt es so eine Methode
remove(value_type)
bei Listen? Ich dachte, sowas würde nur bei assoziativen Containern [i]wirklich- Sinn machen...
Ich glaube, soviel Phantasie darf man haben.
Den Code habe ich von einer Website, wo sich jemand darüber aufregt, den dämlichsten Programmierfehler begangen zu haben.
Sone schrieb:
Übrigens meinste mit Element "1-3" doch das erste bis dritte Element? Und nicht Element mit Wert 1 , 2, 3?
Ja, das ist auch eine interessante Frage, man weiß es nicht. ^^
Was wohl bedeutet, dass der Code nicht optimal ist.
Sone schrieb:
Warum sind die Kanaldeckel auf der Straße rund?
Einfacher, gesunder Menschenverstand löst diese Frage. Wären sie nicht rund, könnten sie mit entsprechender Drehung durch die Öffnung fallen und die Arbeiter verletzen. Bei runden Öffnungen/Deckeln kann das nicht passieren.Wichtigster Grund. Zweiter Grund, die Dinger sind schwer und rollen ist einfacher als tragen.
Sone schrieb:
Wieviel wiegt ein Jumbojet beim Start?
Ich schätze, einige Tonnen.Sone schrieb:
Meinste jetzt einen Kampfjet, wie den F14B oder einen Jumbo-Flugzeug (Passagierflugzeug)? Ich weiß nicht was das ist
Ein Jumbo Jet wie dieser fette Airbus für Ladungstransport wiegt, schätz ich einfach mal so, einige Hundert Tonnen.Es ist keine einfache Schätzfrage. Es ist eine Schätzfrage, die Du begründen sollst. Deine Schätzung interessiert nicht, die Frage ist, warum glaubst Du, das es einige hundert Tonnen sind und was sind einige hundert? 200t, 500t, 800t?
---------
Dobi schrieb:
Xin schrieb:
Die Tatsache, dass dies nicht Threadsafe ist, fällt bisher nicht ins Gewicht, weil die Klasse wie ein Singleton benutzt wird.
Was hat die Anzahl der Instanzen mit der Anforderung an thread safety zu tun?
Nix, da habe ich zwei Gedanken in einen unstimmigen Satz geworfen.
Es gibt nur keine oder eine Instanz, nur einen Thread, es ist bisher nie als Problem aufgetaucht, unabhängig davon ob die statische Variable durch zwei Instanzen oder zwei Threads zum willkürlichen Spielball wird.
- Sinn machen...
-
Xin schrieb:
List<int> list; list.Append(6); list.Append(5); list.Append(4); list.Append(3); list.Append(2); list.Append(1); /* ... */ /* Element 1 bis 3 löschen */ for(int i = 1; i <= 3; i++) { int x = list[i]; list.Remove(x); }
Sone schrieb:
Der Laufindex der Schleife durchläuft die falschen Werte.
Das blöde ist, dass sich die Liste beim entfernen von list[1] verändert und sich Element 2 dann nicht mehr auf list[2] befindet.
Genau das ist der Punkt. Ich dachte, die Funktion ist wie die bei assoziativen Containern - da wäre diese Schleife kein Problem...
-
ich bin ja nun kein Physiker.. aber sollte ein Jumbojet beim starten nicht ein negatives Gewicht haben, da er ja entgegen der Erdanziehung arbeitet. Die Masse ist hiervon ja unbeeinflusst :).
(... oder ich rede gerade phänomenalen Unsinn..)
-
daki schrieb:
ich bin ja nun kein Physiker.. aber sollte ein Jumbojet beim starten nicht ein negatives Gewicht haben, da er ja entgegen der Erdanziehung arbeitet. Die Masse ist hiervon ja unbeeinflusst :).
(... oder ich rede gerade phänomenalen Unsinn..)
Gewicht beschreibt üblicherweise die Masse und wird üblicherweise in kg angegeben.
Ein Flugzeug von sagen wir 100t wird daher am Boden mit 982 MegaNewton an die Erde gezogen. Entsprechend muss das Flugzeug soviel Schub bzw. Auftrieb erzeugen, dass es 982 MegaNewton Auftrieb erzeugt.
Damit wird die Kraft nach unten (Gravitation) durch den Auftrieb nach oben aufgehoben, das Flugzeug hat weiterhin eine Masse von 100t, aber eine Kraft, die stärker als die Gravitation ist, zieht diese 100t nach oben.Du behältst Dein Gewicht also im Flugzeug üblicherweise und bleibst deswegen auch im Flieger auf dem Boden stehen, denn Du selbst hast ja keinen Auftrieb. Da der Boden des Flugzeugs aber hochgeht, gehst Du auch in die Luft. Wenn Du den Bodenkontakt verlierst, fällt das Flugzeug, dann befindest Du Dich - sofern noch vorhanden - irgendwo zwischen Boden und Decke.
Abzuziehen vom benötigten Auftrieb ist die Anziehungskraft, die die durch die Masse des Flugzeugs verdrängte Luft erfährt. Das Flugzeug "schwimmt" auch in der Luft - ist aber zu schwer, deswegen fällt es ohne Auftrieb runter. Ein LuftSCHIFF hingegen verdrängt mehr schwere Luft durch sein Volumen, das durch leichtere Gase die schwerere Luft verdrängt (z.B. heiße Luft beim Ballon).
Weder Flugzeug noch Luftschiff sollten beim Abheben aber ihre Masse verlieren. Im Notfall kann man durch beim Luftschiff/Helikopter jedoch den benötigten Auftrieb verringern, in dem man Masse in Form von Exterieur oder Ausrüstung abwirft. Das wird beim Ballon in Form vom Ballastsand auch zur Höhensteuerung genutzt.
-
Xin schrieb:
daki schrieb:
ich bin ja nun kein Physiker.. aber sollte ein Jumbojet beim starten nicht ein negatives Gewicht haben, da er ja entgegen der Erdanziehung arbeitet. Die Masse ist hiervon ja unbeeinflusst :).
(... oder ich rede gerade phänomenalen Unsinn..)
Gewicht beschreibt üblicherweise die Masse und wird üblicherweise in kg angegeben.
Ein Flugzeug von sagen wir 100t wird daher am Boden mit 982 MegaNewton an die Erde gezogen.Sind es nicht 1 MegaNewton!?!?
-
Sone schrieb:
Xin schrieb:
daki schrieb:
ich bin ja nun kein Physiker.. aber sollte ein Jumbojet beim starten nicht ein negatives Gewicht haben, da er ja entgegen der Erdanziehung arbeitet. Die Masse ist hiervon ja unbeeinflusst :).
(... oder ich rede gerade phänomenalen Unsinn..)
Gewicht beschreibt üblicherweise die Masse und wird üblicherweise in kg angegeben.
Ein Flugzeug von sagen wir 100t wird daher am Boden mit 982 MegaNewton an die Erde gezogen.Sind es nicht 1 MegaNewton!?!?
Narf... dass eine Grundeinheit das 1000fache einer Einheit ist, da falle ich jedesmal wieder drüber
Egal... 1 MegaNewton tut auch weg, wenn es auf den Fuss drückt.
-
Xin schrieb:
Sone schrieb:
Xin schrieb:
daki schrieb:
ich bin ja nun kein Physiker.. aber sollte ein Jumbojet beim starten nicht ein negatives Gewicht haben, da er ja entgegen der Erdanziehung arbeitet. Die Masse ist hiervon ja unbeeinflusst :).
(... oder ich rede gerade phänomenalen Unsinn..)
Gewicht beschreibt üblicherweise die Masse und wird üblicherweise in kg angegeben.
Ein Flugzeug von sagen wir 100t wird daher am Boden mit 982 MegaNewton an die Erde gezogen.Sind es nicht 1 MegaNewton!?!?
Narf... dass eine Grundeinheit das 1000fache einer Einheit ist, da falle ich jedesmal wieder drüber
Egal... 1 MegaNewton tut auch weg, wenn es auf den Fuss drückt.streng genommen sind es sogar nur 0,981MN, jedenfalls unter der Annahme, der Jumbo startet von der Erde
Aber ich denke zum Thema trägt es nichts mehr bei
-
pumuckl schrieb:
Tyrdal schrieb:
Das versteh ich nicht! Wieso sollte die Gleichstellung von nem Foto betroffen sein?
Das Gleichstellungsgesetz besagt, dass man Bewerber nicht wegen des Aussehens abweisen darf. Ergo, dass Bewerbungsfotos absolut irrelevant sind. Nun sind ein paar Spaßvögel hingegangen und haben Bewerbungen mit Fotos verschickt und haben auf jede Ablehnung pauschal mit einer Klage reagiert, in der sie behauptet haben, dass die Ablehnung auf Grund des Fotos erfolgt sei. Ne Bekannte aus der Personalabteilung erzählte, dass die erste Reaktion ihrer Firma war, erstmal alles was mit Foto kommt zu vernichten, einfach um sich den Stress zu sparen.
Mag ja alles sein, ist in meinen Augen aber Schwachsinn. Hätte es wirklich am Foto gelegen, wären die Leute auch im Gespräch wegen Vorurteilen/Aussehen rausgeflogen. Wird man gleich deswegen aussortiert spart man sich das eh vergebliche Vorstellungsgespräch. Also eher ein Vorteil.
-
Xin schrieb:
Schrott.
die Deklaration int a[10]; definiert zehn Feldelemente
Ja was denn nun? Deklaration oder Definition?
a[n] = n++; ... Welcher der beiden Fälle eintritt, hängt vom Compiler ab.
Das hängt nicht vom Compiler ab, ist also kein implementierungsabhängiges Verhalten sondern undefiniertes.
Es gehört auch schon sehr viel Naivität dazu, hierbei nicht sequencepoint zu erwähnen.Außerdem fehlt in der Auflistung der Klassiker null statement hinter for/while statement.
-
Xin schrieb:
Noch mehr Schrott:
char HopeItFits[12]; [...] while(scanf("%11s", HopeItFits) != NULL) { HopeItFits[11] = `\0`; [...]
Ist natürlich sinnfrei, da scanf mit %s ein abschließendes '\0' garantiert.
Gleich im nächsten Abschnitt hat der Autor schon wieder alles vergessen,char BigBadBuffer[120]; [...] while(scanf("%120s", BigBadBuffer) != NULL) { BigBadBuffer[119] = `\0`;
neben dem sinnfreien '\0' kann er nicht zählen und verwendet 120 statt 119.
char userPassword[12]; [...] gets(userPassword); Wenn der Benutzer jetzt mehr als 12 Zeichen (32Bit Alignment) eingibt, dann überschreibt er den Inhalt von
beweist auch wieder, dass der Autor nicht zählen kann (es muss natürlich 11 Zeichen heißen)
while(scanf("%120s", BigBadBuffer) != NULL)
ist auch deswegen Schrott, weil scanf bekanntlich int liefert und hier auf NULL getestet wird; zwar ist NULL als null integer Konstante definiert und nur deswegen geht hier die Sache gut, das Ganze bleibt aber trotzdem Schrott, da scanf auch EOF liefern kann (Lesefehler,EOF aus zuvor nicht geleertem Eingabepuffer,..) und dafür liefert !=NULL true.
`Man muss jedoch aufpassen, da strncpy(3)/strncat(3) genau die Anzahl der
Bytes kopiert, die man als drittes Argument beim Funktionsaufruf angibt und
(strncpy(3)/strncat(3)) kein NULL-Byte dem String anhängt.`
Das ist natürlich auch wieder Unsinn, strncat hängt immer '\0' an.
Und "NULL-Byte" benutzt auch wieder den unpassenden, irreführenden und unsäglichen Zeigerkontext.Ich habe bei ca. 30% des Unsinnpapiers aufgehört zu lesen,
das scheint ja ein ziemlich dilettantischer Haufen da in Nürnberg zu sein, in kurzer Zeit musste ich Schrott von 2 solcher SUSE-Vertreter hier lesen.@Xin: Wenn du schon so lange C kennst, warum verlässt du dich dann auf so ein zusammengegoogeltes Halbwissen bei deinen "Einstellungstests"?
Damit kannst du vielleicht irgendwelche Bachelor-Absolventen beeindrucken, aber ein Fachmann hätte dir schon deine "Fragestellungen" um die Ohren gehauen.
-
Wutz schrieb:
Damit kannst du vielleicht irgendwelche Bachelor-Absolventen beeindrucken, aber ein Fachmann hätte dir schon deine "Fragestellungen" um die Ohren gehauen.
Vielleicht geht es ja genau darum. Das übliche "jung, dynamisch, innovativ" heißt ganz einfach, dass man nur Absolventen einstellt. Die sind erstens billiger und schlagen zweitens nicht gleich die Hände über dem Kopf zusammen, wenn sie die Codebasis das erste mal sehen.
-
Bashar schrieb:
gleich die Hände über dem Kopf zusammen, wenn sie die Codebasis das erste mal sehen.
Du meinst, weil sie so scheiße ist?
Wieso ist das denn Standard, das alle "Code-Basen" (oder wie auch immer man sie nennt) eine C++-sche Katastrophe darstellen?
-
@Topic: gute Kenntnisse besitzt, wer weiss, wofür
mutable
da ist
-
Sone schrieb:
Wieso ist das denn Standard, das alle "Code-Basen" (oder wie auch immer man sie nennt) eine C++-sche Katastrophe darstellen?
Das liegt am Unterschied aus Theorie und Praxis
In der Theorie hat man immer die Zeit und die Ressourcen, den Code zu säubern, kontinuierlich zu refactoren, bis zu 100% Testabdeckung zu erreichen usw. In der Theorie kann man die Projektleiter davon überzeugen, dass es auf lange Sicht Zeit spart, sauber zu arbeiten, man kann Features, die tatsächlich mal nicht fertig werden, aufs nächste Release verschieben, statt dem Kunden eine quick&dirty-Lösung unterzujubeln. In der Theorie bildet Hans-Jürgen vom Büro nebenan sich kontinuierlich fort, auch in der Midlife Crisis mit Frau und drei Kindern, und in der Theorie weiß er deshalb, dass der C++-Stil von 1996 nicht mehr angebracht ist...
-
maximAL schrieb:
@Topic: gute Kenntnisse besitzt, wer weiss, wofür
mutable
da istWas? Das weiß jeder Anfänger. Komm mal mit was richtig schwierigem.
-
pumuckl schrieb:
Sone schrieb:
Wieso ist das denn Standard, das alle "Code-Basen" (oder wie auch immer man sie nennt) eine C++-sche Katastrophe darstellen?
Das liegt am Unterschied aus Theorie und Praxis
In der Theorie hat man immer die Zeit und die Ressourcen, den Code zu säubern, kontinuierlich zu refactoren, bis zu 100% Testabdeckung zu erreichen usw. In der Theorie kann man die Projektleiter davon überzeugen, dass es auf lange Sicht Zeit spart, sauber zu arbeiten, man kann Features, die tatsächlich mal nicht fertig werden, aufs nächste Release verschieben, statt dem Kunden eine quick&dirty-Lösung unterzujubeln. In der Theorie bildet Hans-Jürgen vom Büro nebenan sich kontinuierlich fort, auch in der Midlife Crisis mit Frau und drei Kindern, und in der Theorie weiß er deshalb, dass der C++-Stil von 1996 nicht mehr angebracht ist...
Na und? Hast du Drei Kinder oder bist auch nur verheiratet? Höchstwahrscheinlich nicht (wie Jürgen Wolf mal sagte: "Mein Sohn und meine Frau protestieren heftig, wenn ich mich wieder zum PC davonstehle").
-
Sone schrieb:
[mutable]Was? Das weiß jeder Anfänger. Komm mal mit was richtig schwierigem.
Das weiß nicht jeder Anfänger, das weiß nichtmal jeder Profi. Viele fangen an zu frickeln, und wenn es läuft, freuen sie sich. Und wenn sie lauffähige Programme bauen können, dann können sie was, und das reicht dann bis zur Rente oder alternativ bis man genügend Erfahrung auf dem Buckel hat, dass man ins Management aufrücken kann.
-
Bashar schrieb:
Sone schrieb:
[mutable]Was? Das weiß jeder Anfänger. Komm mal mit was richtig schwierigem.
Das weiß nicht jeder Anfänger, das weiß nichtmal jeder Profi. Viele fangen an zu frickeln, und wenn es läuft, freuen sie sich. Und wenn sie lauffähige Programme bauen können, dann können sie was, und das reicht dann bis zur Rente oder alternativ bis man genügend Erfahrung auf dem Buckel hat, dass man ins Management aufrücken kann.
In was für einer Welt leben wir?
-
Sone schrieb:
In was für einer Welt leben wir?
Keine Ahnung. Aber offenbar wir in einer anderen als du ...