Du bist nicht eingeloggt! Möglicherweise kannst du deswegen nicht alles sehen.
  (Noch kein mods.de-Account? / Passwort vergessen?)
Zur Übersichtsseite
Hallo anonymer User.
Bitte logge dich ein
oder registriere dich!
 Moderiert von: Irdorath, statixx, Teh Wizard of Aiz


 Thema: pOT-lnformatik, Mathematik, Physik XIII ( Completely Automated Public User Test To tell PIMP )
« vorherige 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 [27] 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 nächste »
erste ungelesene Seite | letzter Beitrag 
B0rG*

Gordon
Ich meine den Part der zur Compilezeit passiert.
Ich habe so gut wie keine Erfahrung mit Debuggern in der C-Welt muss ich zugeben.

e/ Ein wenig expliziter: Ich benutze atm Eigen und die Fehlermeldungen tendieren ab und an dazu mehere hundert Zeilen lang zu werden. Meistens kann man ganz gut raten wo das Problem ist (sie geben sich ja auch alle Mühe das irgendwie klar zu machen), aber ich frage mich wie die Leute die Eigen schreiben an ihrem Code rumwerkeln.
Das ganze ist nicht ganz uneigennützig, da ich was in der richtung demnächst evtl brauchen werde.
[Dieser Beitrag wurde 2 mal editiert; zum letzten Mal von B0rG* am 13.06.2013 22:46]
13.06.2013 22:37:50  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Wraith of Seth

wraith_of_seth
 
Zitat von nobody

Dienstag Abgabe? Hast du nicht gerade erst angefangen?

Wie auch immer, frohes schaffen.


Ihr könnt euch wohl nicht entscheiden wie?
- WAAAS, erst Diplomarbeit, du bist doch schon eeeeewig Student!
- Was, du gibst bald ab?!

Breites Grinsen

...

Mal sehen, in welcher Staffel ich bei Voyager am Dienstag bin.

peinlich/erstaunt

Ob ich die niedliche Chinesin dazu einladen schaffe...?

Breites Grinsen

Hast du entdeckt, dass Frauenbeine keine Tischbeine sind? Na bravo!
13.06.2013 22:39:56  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
_Ac_

Phoenix
 
Zitat von B0rG*

Ich meine den Part der zur Compilezeit passiert.
Ich habe so gut wie keine Erfahrung mit Debuggern in der C-Welt muss ich zugeben.

e/ Ein wenig expliziter: Ich benutze atm Eigen und die Fehlermeldungen tendieren ab udn an dazu mehere Hunder Zeilen lang zu werden. Meistens kann man ganz gut raten wo das Problem ist (sie geben sich ja auch alle Mühe das irgendwie klar zu machen), aber ich frage mich wie die Leute die Eigen schreiben an ihrem Code rumwerkeln.
Das ganze ist nicht ganz uneigennützig, da ich was in der richtung demnächst evtl brauchen werde.


Bei Eigen hilft meistens die erste Zeile der Fehlermeldung anzuzeigen und gut überlegen, was man machtfröhlich
Nachher kommen halt meistens "Folgefehler". Du kannst halt keine Breakpoints beim Kompilieren setzen, deshalb brauchst du eine starke IDE; mit VS und Visual assist funktioniert schon recht anständig
13.06.2013 22:46:05  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
pinnback

AUP pinnback 14.02.2010
verschmitzt lachen
 
Zitat von RichterSkala

Hilfe, ich beginne Interesse an Carbonnanotubes zu entwickeln traurig


Benutze altes ausgeleiertes Thema, das völlig in Vergessenheit geraten ist, kaufe ein paar CNTs oder Graphen, lege sie/es drauf, drüber, drunter oder hinein -> Instantpaper! traurig
14.06.2013 0:40:35  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
csde_rats

AUP csde_rats 04.09.2021
 
Zitat von _Ac_

 
Zitat von B0rG*

Ich meine den Part der zur Compilezeit passiert.
Ich habe so gut wie keine Erfahrung mit Debuggern in der C-Welt muss ich zugeben.

e/ Ein wenig expliziter: Ich benutze atm Eigen und die Fehlermeldungen tendieren ab udn an dazu mehere Hunder Zeilen lang zu werden. Meistens kann man ganz gut raten wo das Problem ist (sie geben sich ja auch alle Mühe das irgendwie klar zu machen), aber ich frage mich wie die Leute die Eigen schreiben an ihrem Code rumwerkeln.
Das ganze ist nicht ganz uneigennützig, da ich was in der richtung demnächst evtl brauchen werde.


Bei Eigen hilft meistens die erste Zeile der Fehlermeldung anzuzeigen und gut überlegen, was man machtfröhlich
Nachher kommen halt meistens "Folgefehler". Du kannst halt keine Breakpoints beim Kompilieren setzen, deshalb brauchst du eine starke IDE; mit VS und Visual assist funktioniert schon recht anständig


Hmm achso das meinst du.
Ich würde sagen, dass das primär Erfahrungssache ist.
Den riesigen Rattenschwanz lernt man zu schätzen, weil da letztlich die "Spur" des Fehlers drinsteht, also wo z.B. ein eingesetzter Typ anfängt Fehler zu verursachen.

Tools um Templates zu debuggen sind mir nicht bekannt... wäre wohl auch relativ schwer, weil es bei Templates fast ausschließlich um Logikfehler des Programmierers geht, die ja nun doch relativ schwer erkennbar sind o)
14.06.2013 10:22:59  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Admiral Bohm

tf2_spy.png
LLVM/CLANG soll etwas hübschere Fehlermelungen produzieren und generell nicht schlecht für statische Analyse sein. Es kompiliert gerade. Ich berichte dann mal.

http://clang.llvm.org/diagnostics.html

http://clang.llvm.org/get_started.html
http://www.ishani.org/web/articles/code/clangvsx/
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von Admiral Bohm am 14.06.2013 10:33]
14.06.2013 10:31:01  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
_Ac_

Phoenix
Boost( <3 ) hat auch so "static asserts http://www.boost.org/doc/libs/1_38_0/doc/html/boost_staticassert.html, das koennte auch noch helfen.

edit: die Boost MPL hat auch noch nuetzliche Sachen dabei, mit denen man Typen pruefen kann (is_arithmetic,...)
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von _Ac_ am 14.06.2013 11:10]
14.06.2013 11:08:14  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
csde_rats

AUP csde_rats 04.09.2021
Jo Clang macht oft etwas besser verständliche Fehlermeldungen als GCC & wird auch in einigen IDEs genutzt. Der erzeugte Code ist allerdings schlechter als der vom GCC.
14.06.2013 11:55:05  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
NRG_Mash

tf2_medic.png
 
Zitat von csde_rats

Jo Clang macht oft etwas besser verständliche Fehlermeldungen als GCC & wird auch in einigen IDEs genutzt. Der erzeugte Code ist allerdings schlechter als der vom GCC.


Was heißt 'schlechter'? Ich habe bisher immer gcc benutzt und bin immer zufrienden gewesen. Ich hab nur mal gehört, dass clang schneller im compilen sei. Willst du dazu etwas schreiben? Würd mich mal echt interessieren, vorallem da ich auf die schnelle keinen interessanten Vergleich gcc va. clang gefunden habe.
14.06.2013 13:32:24  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Wraith of Seth

wraith_of_seth
Darf es mich amüsieren, dass jetzt in meiner Bibliographie Einträge wie der folgende sind?
[DeW67]DeWitt, Bryce S. [...] In: DeWitt, Cecile [...]

höhö...peinlich/erstaunt

Therefore, those people who say that they can't jack off to anime must have something wrong with their brains!
14.06.2013 14:07:50  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
con_chulio

AUP con_chulio 03.01.2009
 
Zitat von csde_rats

 
Zitat von B0rG*

Apropos: Gibt es irgendeine gescheite Möglichkeit C++-Template Code zu debuggen?


Genauso wie normalen Code?!



also ganz viele cout << "Hier bin ich" << endl;

*muhahahahaha*
14.06.2013 14:29:40  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Wraith of Seth

wraith_of_seth
 
Zitat von con_chulio

also ganz viele cout << "Hier bin ich" << endl;

*muhahahahaha*


SO kann ich noch selbst debuggen!

Alright, the cat's alive - let's go to dinner!
14.06.2013 14:35:31  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
MCignaz

Arctic
Nichtsequentielle Programmierung
Folgende Aufgabe:
Drei Klassen verschieden großer Objekte (große, mittlere und kleine) duerfen sich nur nach folgender Regel von A nach B und umgekehrt bewegen: Der Weg zwischen A und B darf zur gleichen Zeit immer nur in einer Richtung benutzt werden; entweder von einem großen, von einem oder zwei mittleren, von einem mittleren und ein bis zwei kleinen oder von hoechstens vier kleinen Objekten.
Entwickeln Sie einen fairen (!) Algorithmus zur Synchronisation der Bewegungen vieler Objekte und begruenden Sie seine Korrektheit.


Dazu habe ich mir folgende Ueberlegungen gemacht:
- jedes Objekt bekommt eine ID, die einfach immer aufsteigend von 0 beginnend vergeben werden und eine Eigenschaft (links oder rechts) mit ihrer Herkunft
- ein Objekt (gross, mittel, klein) hat eine Zahl, die den Platzanspruch repraesentiert (4, 2, 1)
- die herumschwirrenden Objekte sollen sich zu "Clustern" zusammenfinden, also einer uebergeordneten Struktur, die "4" Platz bietet. Damit sollen die Objekte portioniert werden fuer den Transfer
- ein fertiger Cluster enthaelt eine Zahl, die die Summe der IDs der in ihm enthaltenen Objekte ist
- ein neuer, fertiggebildeter Cluster reiht sich hinten in die Clusterwarteschlange ein
- es gibt zwei Clusterwarteschlangen, jeweils eine auf der linken und rechten Seite des Transferweges
- der jeweils vordere Eintrag jeder Clusterwarteschlange wird verglichen, der Cluster mit der niedrigeren ID-Summe wird transferiert

Ist das ein halbwegs praktikabler und sinnvoller Ansatz? Und etwas konkreter: Wie koennte ich diese Cluster bilden? Also wie regele ich es, dass ein neuer Cluster erzeugt, passend von den umherschwirrenden Objekten befuellt, geschlossen und dann wieder ein neuer erzeugt wird?
Zum Befuellen wuerde ich ein MUTEX benutzen, sodass wirklich nur ein Objekt gerade auf den Cluster pruefen und sich hinzufuegen darf.
Fuer die Clusterwarteschlange wuerde ich mir eine verkettete Liste bauen, ist das sinnvoll oder schon zu kompliziert? Irgendwie hab ich das Gefuehl, dass das einfacher und eleganter sein muesste. peinlich/erstaunt
14.06.2013 15:01:11  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Admiral Bohm

tf2_spy.png
Ein paar Punkte sind mir noch nicht ganz klar:
Alle Objekte von Rechts sollen nach Links und umgekehrt?
Für wen muss es 'fair' sein? Objekttypen? Seiten?

Prinzipiell sehe ich 3 Prozesse/Threads: Pool A, Pool B und der Monitor für die Verbindung. Beide Pools werfen zufällig Objekte auf den Monitor und empfangen vom Monitor. Der Rest hängt von den offenen Punkten ab.
14.06.2013 15:26:47  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
MCignaz

Arctic
Ja, alle Objekte von rechts wollen/sollen nach links und vice versa. Fairness soll fuer die Objekte gegeben sein, so hab ichs jedenfalls verstanden. Sprich: Jedem Objekt, das die Verbindung passieren moechte, muss dies zur irgendeinem Zeitpunkt garantiert auch moeglich sein.
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von MCignaz am 14.06.2013 15:32]
14.06.2013 15:31:54  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
B0rG*

Gordon
...
Danke für die Hinweise.
14.06.2013 16:31:49  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
wuSel

AUP wuSel 24.02.2008
...
 
Zitat von con_chulio

 
Zitat von csde_rats

 
Zitat von B0rG*

Apropos: Gibt es irgendeine gescheite Möglichkeit C++-Template Code zu debuggen?


Genauso wie normalen Code?!



also ganz viele cout << "Hier bin ich" << endl;

*muhahahahaha*




"Dies sollte nie angezeigt werden."

... und dann im Release vergessen. Business as usual!
14.06.2013 17:28:26  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
csde_rats

AUP csde_rats 04.09.2021
 
Zitat von NRG_Mash

 
Zitat von csde_rats

Jo Clang macht oft etwas besser verständliche Fehlermeldungen als GCC & wird auch in einigen IDEs genutzt. Der erzeugte Code ist allerdings schlechter als der vom GCC.


Was heißt 'schlechter'? Ich habe bisher immer gcc benutzt und bin immer zufrienden gewesen. Ich hab nur mal gehört, dass clang schneller im compilen sei. Willst du dazu etwas schreiben? Würd mich mal echt interessieren, vorallem da ich auf die schnelle keinen interessanten Vergleich gcc va. clang gefunden habe.


clang kompiliert schneller als gcc und macht bessere Fehlermeldungen, optimiert den Code aber schlechter als der GCC.
Bei Phoronix gibt's da nen paar Benchmarks zu, allerdings sind die Fazitten™ Bullshit.
14.06.2013 17:32:32  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Kambfhase

tf2_medic.png
 
Zitat von MCignaz

Folgende Aufgabe:
Drei Klassen verschieden großer Objekte (große, mittlere und kleine) duerfen sich nur nach folgender Regel von A nach B und umgekehrt bewegen: Der Weg zwischen A und B darf zur gleichen Zeit immer nur in einer Richtung benutzt werden; entweder von einem großen, von einem oder zwei mittleren, von einem mittleren und ein bis zwei kleinen oder von hoechstens vier kleinen Objekten.
Entwickeln Sie einen fairen (!) Algorithmus zur Synchronisation der Bewegungen vieler Objekte und begruenden Sie seine Korrektheit.


Dazu habe ich mir folgende Ueberlegungen gemacht:
- jedes Objekt bekommt eine ID, die einfach immer aufsteigend von 0 beginnend vergeben werden und eine Eigenschaft (links oder rechts) mit ihrer Herkunft
- ein Objekt (gross, mittel, klein) hat eine Zahl, die den Platzanspruch repraesentiert (4, 2, 1)
- die herumschwirrenden Objekte sollen sich zu "Clustern" zusammenfinden, also einer uebergeordneten Struktur, die "4" Platz bietet. Damit sollen die Objekte portioniert werden fuer den Transfer
- ein fertiger Cluster enthaelt eine Zahl, die die Summe der IDs der in ihm enthaltenen Objekte ist
- ein neuer, fertiggebildeter Cluster reiht sich hinten in die Clusterwarteschlange ein
- es gibt zwei Clusterwarteschlangen, jeweils eine auf der linken und rechten Seite des Transferweges
- der jeweils vordere Eintrag jeder Clusterwarteschlange wird verglichen, der Cluster mit der niedrigeren ID-Summe wird transferiert

Ist das ein halbwegs praktikabler und sinnvoller Ansatz? Und etwas konkreter: Wie koennte ich diese Cluster bilden? Also wie regele ich es, dass ein neuer Cluster erzeugt, passend von den umherschwirrenden Objekten befuellt, geschlossen und dann wieder ein neuer erzeugt wird?
Zum Befuellen wuerde ich ein MUTEX benutzen, sodass wirklich nur ein Objekt gerade auf den Cluster pruefen und sich hinzufuegen darf.
Fuer die Clusterwarteschlange wuerde ich mir eine verkettete Liste bauen, ist das sinnvoll oder schon zu kompliziert? Irgendwie hab ich das Gefuehl, dass das einfacher und eleganter sein muesste. peinlich/erstaunt



Ohne viel Ahnung von Nichtsequentielle Programmierung zu haben: Mach es doch wie Ethernet. Die Objekte versuchen gleichzeitig rüber zu kommen. Falls die Strecke schon belegt ist -> zufälliger exponentieller backup. Jedes Objekt kommt nach endlicher Zeit mal drüben an.

(Die Aufgabenstellung sagt nichts von Optimierung Augenzwinkern)
14.06.2013 18:55:11  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
MCignaz

Arctic
Naja meine Probleme sind da schon eine Stufe konkreter Richtung Implementierung. Dennoch danke!
14.06.2013 19:01:30  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Admiral Bohm

tf2_spy.png
Mal wieder ein einwurf zu nicht standardkonfomen code, der mit einem ordentlichen compiler fehler wirft wo man auch mit einer guten Fehlermeldung dumm davor steht. Ich zumindest kurz vor feierabend.

 
Code:
bool xxx::notInContainer(T2DOffsetROM* or) const {
// bla
}
14.06.2013 19:08:39  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
csde_rats

AUP csde_rats 04.09.2021
Was soll das const an der Stelle überhaupt bewirken? Mata halt...
14.06.2013 19:19:23  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Admiral Bohm

tf2_spy.png
Die Methode verändert das Objekt nicht: http://www.parashift.com/c++-faq/const-member-fns.html

Erkenntnis der letzten Monate: Man kann gar nicht oft genug 'const' schreiben in C++.
Außer man will ganz sicher etwas ändern.
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von Admiral Bohm am 14.06.2013 19:28]
14.06.2013 19:26:39  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
AcidF!re

tf2_soldier.png
http://en.cppreference.com/w/cpp/keyword/or

Ich schätze mal das "or" ist das Problem. Breites Grinsen
14.06.2013 19:27:23  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
csde_rats

AUP csde_rats 04.09.2021
Schreibt man das nicht nur in die Deklaration, wie z.B. nen Standardwert auch? :O

/e: Tatsache!

 
Code:
% cat t.c
int main(){
int and, or;
}

% clang++ t.c
clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated
t.c:2:5: warning: rvalue references are a C++11 extension [-Wc++11-extensions]
int and, or;
    ^
t.c:2:8: error: expected unqualified-id
int and, or;
       ^
1 warning and 1 error generated.
zsh: exit 1     clang++ t.c
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von csde_rats am 14.06.2013 19:30]
14.06.2013 19:28:07  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Admiral Bohm

tf2_spy.png
Nein, mit overloading kann man zwei funktionen schreiben die gleich heißen, mit gleichen parametern, von denen eine const ist und die andere nicht. Breites Grinsen Meine ich mich zumindest zu erinnern. peinlich/erstaunt
Deswegen muss es auch in die implementierung.

Punkt für AcidF!re, MSVC unterstützt die and/or/... schlüsselworte nicht. Pillepalle
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von Admiral Bohm am 14.06.2013 19:33]
14.06.2013 19:30:43  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
AcidF!re

tf2_soldier.png
Ich schätze mal rats dachte man müsste das const nur bei der Definition angeben (also im Header) und könnte das in der Implementation selbst weglassen. Zumindest hab ich ihn so verstanden.
14.06.2013 19:32:34  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
csde_rats

AUP csde_rats 04.09.2021
Ja das dachte ich bis gerade eben. Const benutzte ich idR aber eh nur für Variablen/Parameter.

http://e-maxx.ru/bookz/files/cpp_standard.pdf‎;

Seite 12.
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von csde_rats am 14.06.2013 19:34]
14.06.2013 19:34:19  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
PutzFrau

Phoenix Female
Deklaration ist das gesuchte Wort. :x

edit: an acid
edit2: Und Blohms Antwort darauf gibt doch eine passende Begruendung, warum es so ist.

[Dieser Beitrag wurde 2 mal editiert; zum letzten Mal von PutzFrau am 14.06.2013 19:35]
14.06.2013 19:34:45  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
horscht(i)

AUP horscht(i) 14.09.2014
Anfang Juli Projektantrag verteidigen...äh..."Vermarktungspotential darstellen". Ich bin gespannt.
14.06.2013 23:48:52  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
 Thema: pOT-lnformatik, Mathematik, Physik XIII ( Completely Automated Public User Test To tell PIMP )
« vorherige 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 [27] 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 nächste »

mods.de - Forum » Public Offtopic » 

Hop to:  

Thread-Tags:
Mod-Aktionen:
09.08.2013 17:58:27 Rufus hat diesen Thread geschlossen.
08.04.2013 15:15:29 Teh Wizard of Aiz hat diesem Thread das ModTag 'pimp' angehängt.

| tech | impressum