Die Suche ergab 1735 Treffer

von dot
09.02.2024, 11:35
Forum: Allgemeines Talk-Brett
Thema: Jammer-Thread
Antworten: 7527
Zugriffe: 1458515

Re: Jammer-Thread

Wäre damit außer Vulkan dann nicht alles tot? Es gibt mehr als nur Desktop PC… Vulkan läuft natively auf Linux, Windows und Android, mit einem Emulationslayer auf Apple, gar nicht auf Konsolen (soweit mir bekannt). Zumindest für Mobile wirst du vermutlich so oder so einen separaten Pfad brauchen. S...
von dot
13.12.2023, 10:30
Forum: Allgemeines Talk-Brett
Thema: Jammer-Thread
Antworten: 7527
Zugriffe: 1458515

Re: Jammer-Thread

Das Ergebnis des Placement New kann hingegen problemlos genutzt werden, um das Objekt zu manipulieren:   float * f = new (&i) float{ 42.f }; // lifetime i end; f ist nun Alias auf i   *f = 43.f; // OK Korrekt, das Ergebnis des Placement-New kann problemlos genutzt werden. Das ursprüngliche Beis...
von dot
12.12.2023, 23:41
Forum: Allgemeines Talk-Brett
Thema: Jammer-Thread
Antworten: 7527
Zugriffe: 1458515

Re: Jammer-Thread

Das invoked im ersten Durchlauf UB. var ist nicht transparently replaceable mit einem float . Aber erst ab C++20 IIRC? In C++17 und davor dürfte das gültig sein, weil es dieses Konzept damals noch nicht gab. Soweit ich das sehe war das seit C++98 UB. C++20 hat lediglich die Anforderungen bezüglich ...
von dot
12.12.2023, 22:30
Forum: Allgemeines Talk-Brett
Thema: Jammer-Thread
Antworten: 7527
Zugriffe: 1458515

Re: Jammer-Thread

Und, weniger natürlich, aus Placement new . Beispiel (ich glaube, das war der GCC-Bug):   int var;   for(int i = 0; i < 123; i++) {     if(i & 1)       new (&var) int(42);     else       new (&var) float(42.f);     someFunction(var);   } Bei jedem geraden Schleifendurchlauf ist var ein ...
von dot
12.12.2023, 08:29
Forum: Allgemeines Talk-Brett
Thema: Jammer-Thread
Antworten: 7527
Zugriffe: 1458515

Re: Jammer-Thread

Kann mir auch nicht vorstellen, dass sich das gut auf die Performance auswirkt. Weder Compilezeit noch Laufzeit, wenn man voll optimieren will. Meinem Verständnis nach waren die Typen von Pointern auf LLVM IR Ebene schon seit langem nicht (nie?) für Optimierungen nutzbar. Und Typechecking ist etwas...
von dot
15.11.2023, 02:20
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: std::enable_if welcher compiler hat recht?
Antworten: 2
Zugriffe: 296

Re: std::enable_if welcher compiler hat recht?

Frage 1: Wer hat recht? ich vermute leider gcc und clang Keiner hat unrecht, denn es handelt sich hier offenbar um einen Bug im Standard: https://www.open-std.org/jtc1/sc22/wg21/docs/cwg_active.html#2746. Ich glaube es ist unterspezifiziert ob die implizite Instanziierung eines Klassentemplates auc...
von dot
02.11.2023, 03:53
Forum: Grafikprogrammierung
Thema: OpenGL Schadowmap relativ zur kamera
Antworten: 4
Zugriffe: 620

Re: OpenGL Schadowmap relativ zur kamera

Andy90 hat geschrieben: 01.11.2023, 22:17 Ich merke schon, Schatten richtig und vor allem gut zu rendern ist eine Wissenschaft für sich :D
Es ist und bleibt ein ungelöstes Problem der Computergrafik… ^^
von dot
20.10.2023, 01:19
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: [C] function prototype mit const pointer
Antworten: 15
Zugriffe: 1143

Re: [C] function prototype mit const pointer

alternativ:

Code: Alles auswählen

auto lol()
{
    struct result { int integer; float fp; void* pointer; };
    return result { 123, -9.81f, nullptr };
}

int main()
{
    auto [integer, fp, pointer] = lol();
}
von dot
19.10.2023, 14:08
Forum: Allgemeines Talk-Brett
Thema: Jammer-Thread
Antworten: 7527
Zugriffe: 1458515

Re: Jammer-Thread

Ist ja interessant, dass C++ das einbaut. Gibt es da einen Anwendungsfall für? Tyr kann das glaub' ich aus Symmetriegründen schon ziemlich lange, aber mir ist nicht klar wozu man das je bräuchte. Ich meine das Problem mit Float ist letztlich, dass die Operationen darauf zur Compilezeit auszuführen ...
von dot
11.10.2023, 02:00
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: [C] function prototype mit const pointer
Antworten: 15
Zugriffe: 1143

Re: [C] function prototype mit const pointer

starcow hat geschrieben: 10.10.2023, 17:16 Aber vielleicht habt ihr ein gutes Argument dafür, es im Prototypen tatsächlich wegzulassen.
Es ist für den Aufruf der Funktion irrelevant, in einem Prototypen also einfach nur Noise…
von dot
10.10.2023, 14:49
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: struct in Kombination mit typedef
Antworten: 7
Zugriffe: 704

Re: struct in Kombination mit typedef

Könnte man nicht einfach dazu übergehen, ganz grundsätzlich anonyme structs in Kombination mit typedef zu verwenden (quasi als Standard)? Naja, wie du selber schon angemerkt hast geht das halt nicht wenn dein struct Pointer auf sich selbst beinhalten soll. Abgesehen von einem solchen Fall kann man ...
von dot
09.10.2023, 21:11
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: [C] function prototype mit const pointer
Antworten: 15
Zugriffe: 1143

Re: [C] function prototype mit const pointer

Ich suche nach einer Erklärung, weshalb sich die Compiler (clang / gcc) nicht beschweren (auch kein Warning mit -pedantic -Wall -Wextra) wenn man ihnen einen Funktionsprototypen serviert, der sich um ein const (bezogen auf den Pointer selbst) von der eigentlichen Funktion unterscheidet. Ein top-lev...
von dot
20.09.2023, 14:35
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: [C++] concept, das die Anzahl Member eines Types testet
Antworten: 5
Zugriffe: 502

Re: [C++] concept, das die Anzahl Member eines Types testet

Es gibt alternativ auch nen Trick, das auto [a, b] = t; in einen Lambda zu verschieben. Lambdas sind seit C++20 nämlich primary expressions und demzufolge darf man sie jetzt in nem concept einsetzen. Allerdings hat der GCC dazu einen (bekannten) Bug, selbst der neueste, so dass diese Option bei uns...
von dot
20.09.2023, 14:11
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: struct in Kombination mit typedef
Antworten: 7
Zugriffe: 704

Re: struct in Kombination mit typedef

Dass die gleich heißen dürfen, wusste ich nicht. Guter Punkt. Also ehrlich gesagt fehlt mir jetzt auch eine valide Referenz dafür, dass man das so machen darf. Weder clang noch gcc geben mir in diesem Zusammenhang eine Warnung aus - was ja aber eigentlich noch kein Garant dafür ist, dass dies auch ...
von dot
19.09.2023, 17:28
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: [C++] concept, das die Anzahl Member eines Types testet
Antworten: 5
Zugriffe: 502

Re: [C++] concept, das die Anzahl Member eines Types testet

ich weiß nicht, ob das überhaupt möglich ist: ich möchte per concept die Anzahl Member eines Types testen. Im Allgemeinen ist das nicht möglich. Für bestimmte Typen kann man z.B. rumprobieren wie viele Initializer man reinbekommt, aber das sind alles Hacks die nur unter bestimmten Voraussetzungen f...
von dot
17.07.2023, 01:02
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: c-faq.com - UB in Snippet?
Antworten: 21
Zugriffe: 1276

Re: c-faq.com - UB in Snippet?

Ich hab jetzt mal aus Neugier versucht, die explizite Stelle im Standard zu finden, die Bezug nimmt, zum cast int to unsigned int . Leider bin ich nicht fündig geworden - beim Thema "cast" gabs jedenfalls diesbezüglich nichts zu lesen. In C wäre das 6.3.1.3/3 (https://open-std.org/JTC1/SC...
von dot
10.07.2023, 22:50
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: c-faq.com - UB in Snippet?
Antworten: 21
Zugriffe: 1276

Re: c-faq.com - UB in Snippet?

Wie ich sehe, machst du das per cast. Im ISO Standard (den du gepostet hattest) müsste das ja eigentlich ebenfalls zu finden sein - also ob der cast von unsigned nach signed nun implementation-defined ist oder (hoffentlich) "uniform-defined" (wenn man das so nennen kann). Ich vergesse imm...
von dot
10.07.2023, 17:54
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: c-faq.com - UB in Snippet?
Antworten: 21
Zugriffe: 1276

Re: c-faq.com - UB in Snippet?

- Ist es überhaupt erlaubt, das höchstwertige Bit eines signed int mittels den Bitwise-Operatoren (&, ^, |) zu verändern? Ich denke ja. Zwei Probleme, die ich in deinem Code da oben sehe: char muss nicht unbedingt signed sein und int muss nicht unbedingt 32-Bit breit sein, das könnte also überl...
von dot
08.07.2023, 10:46
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: c-faq.com - UB in Snippet?
Antworten: 21
Zugriffe: 1276

Re: c-faq.com - UB in Snippet?

The result of E1 << E2 is E1 left-shifted E2 bit positions; vacated bits are filled with zeros. If E1 has an unsigned type, the value of the result is E1 × 2^E2, wrapped around. If E1 has a signed type and nonnegative value, and E1 × 2^E2 is representable in the result type, then that is the result...
von dot
04.07.2023, 12:09
Forum: Grafikprogrammierung
Thema: double in shader und texture
Antworten: 10
Zugriffe: 551

Re: double in shader und texture

Ich will nicht, aber ich brauche für den Algorithmus diese Genauigkeit. Ist natürlich sehr schade das die Leistung dann derart in die Kniee geht. Beachte, dass die FP64 performance da in etwa gleichauf mit einer modernen CPU ist. Die GPU zu verwenden ist in der Regel mit etwas Overhead verbunden un...
von dot
03.07.2023, 23:08
Forum: Grafikprogrammierung
Thema: double in shader und texture
Antworten: 10
Zugriffe: 551

Re: double in shader und texture

ich wollte mal fragen, ob es irgendwie möglich ist in Shadern und Texturen den Datentype double zu verwenden ? Ich bräuchte es für ein zukünftiges Projekt. Möglichst für DirectX 11 oder 12. CUDA wäre aber auch im Rahmen des Möglichen... Können? Unter Umständen ja. Aber das willst du nicht. Außer du...
von dot
03.07.2023, 22:34
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: c-faq.com - UB in Snippet?
Antworten: 21
Zugriffe: 1276

Re: c-faq.com - UB in Snippet?

Müsste man da nicht zu unsigned long casten? Ich würde mal sagen ja, das schaut mir auf jeden Fall nach UB aus. Bachte auch, dass das ja C ist und nicht C++20. In C++ wäre das OK [expr.shift]/2 (seit C++20). In C aber nicht: https://open-std.org/JTC1/SC22/WG14/www/docs/n3096.pdf 6.5.7/3 (Seite 85)....
von dot
01.06.2023, 23:29
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: Clang mit MSVC - minimale Installation (Anleitung)
Antworten: 17
Zugriffe: 1055

Re: Clang mit MSVC - minimale Installation (Anleitung)

Gibt es einen Weg unter Windows professionell Software zu enwtickeln ohne für die MSVC Runtime irgendwie zu bezahlen? Hatte mir das mal angesehen und keinen offensichtlichen gesehen; kann mich aber auch nicht mehr an die genauen Rahmenbedingungen erinnern. Alles in WSL laufen zu lassen zählt nicht ...
von dot
01.06.2023, 13:11
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: Clang mit MSVC - minimale Installation (Anleitung)
Antworten: 17
Zugriffe: 1055

Re: Clang mit MSVC - minimale Installation (Anleitung)

Rein prinzipiell sollte es glaub ich möglich sein, Clang auf Windows gänzlich ohne MSVC zu betreiben. Clang verwendet nur by default die MSVC Standardlibrary und den MSVC Linker. Wenn du Clang oder zumindest libc++ selber baust, solltest du einfach mit lld und libc++ arbeiten können. Windows SDK wir...
von dot
30.05.2023, 18:11
Forum: Algorithmen und Datenstrukturen
Thema: Verwirrt betreffend Rotationsgeschwindigkeit
Antworten: 23
Zugriffe: 1271

Re: Verwirrt betreffend Rotationsgeschwindigkeit

Und hier hadere ich nun. Der Wert, den ich dann bekomme – ist das die Anzahl voller Umdrehungen pro Sekunde oder rad/s ? Ich glaub der Schlüssel hier liegt in der Tatsache, dass rad keine fundamentale Einheit sondern eher eine dimensionslose Pseudoeinheit ist. 1 rad entspricht keiner direkten physi...
von dot
03.05.2023, 04:00
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: C - Differenzen von zwei unsigned int?
Antworten: 26
Zugriffe: 1692

Re: C - Differenzen von zwei unsigned int?

Wie sieht das mit Rust und Zig aus? Zig: UB (macht Sinn, ist ja stark Performanceorientiert) Rust: check + trap in Debug, wrap in Release (unschön weil weder wirklich safe noch maximal effizient, aus Performancegründen aber als notwendiger Kompromiss erachtet) + in beiden Sprachen gibt es auch Wege...
von dot
03.05.2023, 03:00
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: C - Differenzen von zwei unsigned int?
Antworten: 26
Zugriffe: 1692

Re: C - Differenzen von zwei unsigned int?

Ich glaube du verwechselst C und C++. Nope. Da gibt's nicht wirklich was zu verwechseln, C++ hat den ganzen Kram 1:1 von C geerbt, funktioniert in beiden Sprachen praktisch exakt gleich. C war schon immer ganz nahe dran an der Hardware […] Die Idee, dass C irgendwie besonders nahe an der Hardware i...
von dot
02.05.2023, 02:40
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: C - Differenzen von zwei unsigned int?
Antworten: 26
Zugriffe: 1692

Re: C - Differenzen von zwei unsigned int?

Du kannst also INT und UINT kunterbunt mischen und zuweisen, der Unterschied tritt nur bei einer Abfragen auf < 0 auf! signed und unsigned Integer "kunterbunt mischen" ist eine wunderbar schlechte Idee. Die Tatsache dass C das überhaupt erlaubt, ist einer der größten Designfehler in C… We...
von dot
13.04.2023, 17:45
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: Forward Declaration "manuell" oder #include?
Antworten: 29
Zugriffe: 1522

Re: Forward Declaration "manuell" oder #include?

Also für mich ist vor allem wichtig dass der Code auf einer PDP-11 baut. Da nehme ich gerne entsprechende Design-Entscheidungen in Kauf *scnr*. Ist nicht unbedingt nur eine Frage obs auf einer PDP-11 läuft, sondern generell eine Frage der Skalierbarkeit. Zu vermeiden, dass Teile des Code mehrfach g...
von dot
13.04.2023, 01:59
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: Forward Declaration "manuell" oder #include?
Antworten: 29
Zugriffe: 1522

Re: Forward Declaration "manuell" oder #include?

FWIW, Modules ändern nichts an der Tatsache, dass man in C++ Dinge deklarieren muss, bevor man sich auf sie beziehen kann. Modules bringen uns effektiv nur einen neuen Weg, Deklarationen zu importieren. Wenn du dein Module beispielsweise in separate Interface- und Implementation-units aufteilen will...