|
|
|
|
Ah, jetzt hab ichs! Alles gute, Nemi!
|
|
|
|
|
|
|
| Zitat von igor]2
Ach, ich hab pro Jahr gerade mal ein Zeitfenster von 72 Stunden für solche Sticheleien, das muss ich doch nutzen.
| |
Das kann ich unterbieten
|
|
|
|
|
|
|
| Zitat von Y2Keeper
Ah, jetzt hab ichs! Alles gute, Nemi!
| |
Danke
|
|
|
|
|
|
|
Bevors zu spät ist (wer weiß wie lange man mit 27 noch lebt!): Alles gute!
|
|
|
|
|
|
|
Wenn man Garland glauben kann, gibt es ja sogarein Leben jenseits der 30, von daher bin ich ganz guter Hoffnung.
Aber passend zu meinem fortgeschrittenen Alter, geh ich jetzt einfach ins Bett. Nacht zusammen
|
|
|
|
|
|
|
Alles Gute nachträglich!!!
... aber "Leben" würde ich das nicht nennen ...
|
|
|
|
|
|
|
| Zitat von Nemi Ikara
Wenn man Garland glauben kann, gibt es ja sogarein Leben jenseits der 30, von daher bin ich ganz guter Hoffnung.
Aber passend zu meinem fortgeschrittenen Alter, geh ich jetzt einfach ins Bett. Nacht zusammen
| |
ja, aber man vergisst ab 30 so vieles. Herzlichen Glückwunsch nachträglich
|
|
|
|
|
|
|
Herzlichen Schlüpftag \o/
|
|
|
|
|
|
|
Hallo und Glückwunsch - Internet-Geburtstagsgrüße sind immer toll \o/
|
|
|
|
|
|
|
Falls es jemand interessiert, was mich schon immer gestört hat, ist dass .NET Generics erst zur Laufzeit spezialisiert werden. Meistens ist das kein Problem, aber besonders wenn man math. Funktionen braucht nervt das ziemlich.
Also hab ich mit Hilfe von CodeDom zur Laufzeit eine Klasse für den generischen Typ implementiert, welcher die Operator +,-,*,/ auf die Methoden Add, Subtract, Multiply, Divide abbildet. Das ist sicherlich nicht ganz interessant für die meisten hier, aber das ganze hat mich nur 20 Minuten gekostet und kann von der Idee her vielleicht ganz hilfreich für andere sein.
Da das ganze natürlich nicht sonderlich schnell ist, sollte man das nicht bei jedem Funktionsaufruf machen, sondern eine statische Instanz für entsprechende Klassen speichern, z.B:
|
Code: |
ICalculator<T>
{
T Add(T left, T right);
T Subtract(T left, T right);
T Multiply(T left, T right);
T Divide(T left, T right);
}
|
|
|
Code: |
struct Vector<T>
{
private static readonly ICalculator<T> calculator;
static Vector()
{
Vector<T>.calculator = CalculatorGenerator.Generate<T>();
}
static Vector<T> Add(Vector<T> left, Vector<T> right)
{
...
sum[i] = calculator.Add(left[i], right[i]);
...
}
}
|
|
Damit wird der Typ auch nur einmal für die Vector Klasse erzeugt (bei dessen ersten Verwendung). Kann man sicherlich noch ein bisschen geschickter lösen, so dass es für alle Typen gilt, die Berechnungen durchführen.
Zum Schluss noch der Code zum Erzeugen:
|
Code: |
public static ICalculator<T> Generate<T>()
{
string typeName = String.Concat("__CalculatorOf", typeof(T).Name);
CodeCompileUnit compileUnit = new CodeCompileUnit
{
ReferencedAssemblies =
{
"Calculator.dll"
},
Namespaces =
{
new CodeNamespace
{
Name = "CalculatorNamespace",
Types =
{
new CodeTypeDeclaration
{
Name = typeName,
BaseTypes = { typeof(ICalculator<T>) },
Members =
{
CalculatorGenerator.CreateMethod<T>("Add", CodeBinaryOperatorType.Add),
CalculatorGenerator.CreateMethod<T>("Subtract", CodeBinaryOperatorType.Subtract),
CalculatorGenerator.CreateMethod<T>("Multiply", CodeBinaryOperatorType.Multiply),
CalculatorGenerator.CreateMethod<T>("Divide", CodeBinaryOperatorType.Divide)
}
}
}
}
}
};
CSharpCodeProvider provider = new CSharpCodeProvider();
CompilerResults results = provider.CompileAssemblyFromDom(new CompilerParameters { }, compileUnit);
Type calculatorType = results.CompiledAssembly.GetType(String.Concat("CalculatorNamespace.", typeName));
return (ICalculator<T>)Activator.CreateInstance(calculatorType);
}
private static CodeMemberMethod CreateMethod<T>(string name, CodeBinaryOperatorType operatorType)
{
return new CodeMemberMethod
{
Name = name,
Attributes = MemberAttributes.Public,
ReturnType = new CodeTypeReference(typeof(T)),
Parameters =
{
new CodeParameterDeclarationExpression(typeof(T), "left"),
new CodeParameterDeclarationExpression(typeof(T), "right")
},
Statements =
{
new CodeMethodReturnStatement(
new CodeBinaryOperatorExpression(
new CodeVariableReferenceExpression("left"),
operatorType,
new CodeVariableReferenceExpression("right")))
}
};
}
|
|
Sollte ein Typ "T" diese Operatoren nicht besitzen schlägt das ganze natürlich erst zur Laufzeit fehl, aber immerhin muss man nicht mehr Hand für alle Basis-Typen anlegen und kann eigene Typen durch Überladen der notwendigen Operatoren verwenden.
|
|
|
|
|
|
|
Hmmm, Outlook 2007 ist doch gar nicht so übel.
Der Umstieg von Thunderbird fällt ein bisschen schwer, aber dafür bin ich jetzt auf Laptop, PDA und Handy synchron \o/
Wenn ich das jetzt noch regelmäßig ins Internet in ne MySQL bekomme kann ich in frieden Sterben. Aber dafür muss ich mir sicher ein Makro oder so schreiben
|
|
|
|
|
|
|
Verwendest du ActiveSync? Wenn ich das richtig im Kopf habe, kann dieses leider nur die Outlook-Listen synchronisieren, die lokal in Outlook liegen (oder in Exchange).
Sonst hätte ich eine komplizierte Lösung für dich gehabt (der Sharepoint-Wrapper von dem ich öfters gesprochen habe). Vielleicht findest du aber eine freie Software, welche ActiveSync lizenziert hat, mit der du arbeiten kannst.
Ansonsten kann man mit den Visual Studio Tools for Office auch direkt mit Outlook arbeiten, um die Daten rein- und rauszuschreiben.
|
|
|
|
|
|
|
Daten reinschieben wäre gar nicht so wichtig. Die Daten als ical raus reicht mir schon. aber prinzipiell hab ich ja immer alles bei mir weil ich Handy zu 99% und PDA zu 20% () dabei hab.
Wirklich nett wäre ein Excange-Server mit Webaccess.
Mal sehen ob ich meinen MSDNAA-Account reaktiviert bekomme. Da steht das glaub ich drin.
Aber da blick ich sicher nicht durch
e: Achso, zum Sync mit dem PDA benutz ich ActivSync, mit dem handy die SonyEricssobn-Suite 4.0
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von Ashtray am 17.02.2009 9:58]
|
|
|
|
|
|
Exchange benötigt glaube ich ein Active Directory und ist für diese "Kleinigkeit" schon Overkill.
|
|
|
|
|
|
|
in 5:15 Stunden beginnen meine Ferien \o/ (außer ich versaue es :X)
|
|
|
|
|
|
|
Ist das dein Datenbanken Examen?
|
|
|
|
|
|
|
| Zitat von [DK]Peacemaker
Exchange benötigt glaube ich ein Active Directory und ist für diese "Kleinigkeit" schon Overkill.
| |
Ok, damit ist das schonmal gestorben
Schön wäre noch eine Art gemeinsamer Posteingang wo alle Mails in den Posteingängen der IMAP-Konten auftauchen und dann in einer Spalte einfach der Kontenname steht.
Aber das ist wahrscheinlich auch utopisch. Aber hat ja auch keine andere Software soweit ich weiß
|
|
|
|
|
|
|
| Zitat von Ashtray
| Zitat von [DK]Peacemaker
Exchange benötigt glaube ich ein Active Directory und ist für diese "Kleinigkeit" schon Overkill.
| |
Ok, damit ist das schonmal gestorben
Schön wäre noch eine Art gemeinsamer Posteingang wo alle Mails in den Posteingängen der IMAP-Konten auftauchen und dann in einer Spalte einfach der Kontenname steht.
Aber das ist wahrscheinlich auch utopisch. Aber hat ja auch keine andere Software soweit ich weiß
| |
In Thunderbird geht das wohl. "Global Inbox" nennt es sich. Outlook Express kann das wohl auch.
|
|
|
|
|
|
|
Aber doch nur bei POP, nicht bei IMAP
Ein Virtueller Ordner der mehrere IMAP-Konten übergreift reicht mir ja.
Das wird ja wohl irgendwie möglich sein mehrere IMAP-Inboxen gleichzeitig abzufragen, bzw. anzeigen zu lassen!
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von Ashtray am 17.02.2009 10:49]
|
|
|
|
|
|
| Zitat von Y2Keeper
Ist das dein Datenbanken Examen?
| |
Modellierung und Simulation
Datenbanken war 1,3 und Computergrafik 1,3. Entsprechend hoch mein innerer drang jetzt auch wieder eine 1,x zu schaffen, wobei das Thema doofer ist.
Alle 3 Noten zusammen gehen dann zu 1/5 in die Diplomsnote rinn
Nächstes Semester die Prüfungen auch zu 1/5
Nebenfach 1/5
Hauptvertiefung 1/5
Diplomarbeit 2/5
moment mal, hier stimmt doch was nicht
|
|
|
|
|
|
|
|
|
|
|
oh ha, drei leute heut morgen gleich durchgefallen, das kann ja was werden
|
|
|
|
|
|
|
|
|
|
|
Hmm, mal schauen, was meine gestrige Klausur (Einführung Betriebssyste) wird. Die haben echt nur abgefragt, wie gut man deren Folien auswendig gelernt hat. Und das habe ich nicht getan.
|
|
|
|
|
|
|
postfix ist schon ein komisches ding..
von heute auf morgen, ohne dass ich irgendwas geändert habe, bekomme ich bei einer domain von 41 einen loopback zum server, wenn ich mails hinschicke oder abrufen will.. alle anderen domains gehen ohne probleme..
*haare rauf*
|
|
|
|
|
|
|
1,3
Irgendwas stimmt nicht mit mir. Bin ich immer noch der, der bei Linearer Algebra im ersten Semester 3mal durch das testat gefallen ist, um für die Prüfung zugelassen zu werden?
1-2 Semester: 3
3-4 Semester: 2
5: Semester: 1,3
Hmmh Summa Cum Laude kommt in greifbare Reichweite
|
|
|
|
|
|
|
Ha, wie se gelacht haben über mich, als ich in den ersten Semester son wenig Verstanden habe. Nur weil die das alles in der Schule hatten und ich nicht.
Nu zeigt sich endlich was denen das für Vorteile gebracht hat. HA!
|
|
|
|
|
|
|
Du bist einfach ein verkackter Streber.
Glückwunsch.
|
|
|
|
|
|
|
Ich finds ne Frechheit, dass noch niemand meinen tollen Untertitel honoriert hat!
|
|
|
|
|
|
|
Ich hab drüber gelacht. Wenns recht ist.
|
|
|
|
|
|
Thema: Gehirnsalat ( wir unter uns ) |