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: mercury, Schalentier


 Thema: 30*100 gute Gründe für Linux ( Jeder Post zählt )
« 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 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 nächste »
erste ungelesene Seite | letzter Beitrag 
hoschi

hoschi
 
Zitat von Traxer

 
Zitat von hoschi

#include <iostream>
#include <string>
#include <cstdlib>
using namespace std;

struct Foo {
    int a;
    string* b;
    string c;
    float f;
};

int main() {
    Foo* foo = static_cast<struct Foo*>(malloc(sizeof(struct Foo)));
    ...
    free(foo);
    return 0;
}


Das ist schon so nicht gut, klar. Wer weiss auf den ersten Blick was passiert ist?

Spoiler - markieren, um zu lesen:

malloc() ist reines C, nicht C++ und ruft somit die Konstrukturen nicht auf und holt sich nur den Speicher. Wie durch ein Wunder (solche Wunder haben eine fachspezifischen Namen: undefiniertes Verhalten) hat es aber trotzdem Teilweise funktioniert. Bist halt doch der string c mit einem std::bad_alloc bei aufeinanderfolgenden Zuweisungen explodiert ist. Proband string b tut das malloc() nicht weh, ist nur ein Pointer.

Loesung: new()/delete(), weil C++
Hinweis: LLVM und GCC warnen einen nicht.



das ist übrigens kein undefiniertes verhalten. das verhalten ist vollkommen korrekt und auch so gewollt.
um das in der art richtig zu nutzen gibt es halt placement new und dann musst du halt den destruktor manuell aufrufen, befor du den speicher freigibst.

das ist effektiv das, was new und delete im hintergrund machen und was man machen muss, wenn man selber nen allocator (nicht im sinne von stl) bauen will / muss.




Stimmt wohl. Ich hatte "undefiniert" angenommen, weil ich innerhalb des original Quellcodes in der Lage war einmal dem string-Objekt einen C-String zuzuweisen, bei der concatenation es weiteren C-Strings an das string-Objekt besagten bad::alloc erhalten habe. Wie festgestellt, bloed wenn man C-Code unueberlegt mit C++ erweitert und mischt.
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von hoschi am 22.04.2016 10:52]
22.04.2016 10:52:04  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
hoschi

hoschi
Rufus hat nicht so unrecht. Und ansonsten haben mir die paar letzten Posts einen Lachflash besorgt Breites Grinsen


btw.
Gerade arbeitet man an XDG-Apps, darueber kann man jetzt streiten. Aber Ubuntu braucht natuerlich SNAP, mit veralteten Libraries und Hauptspeichergemampfe.

Wütend
22.04.2016 10:58:48  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
csde_rats

AUP csde_rats 04.09.2021
 
Zitat von RichterSkala

 
Zitat von csde_rats

Python lohnt sich. Es ist eine sehr angenehme Sprache. Bei weitem nicht perfekt, aber alles kein Beinbruch.


Irgendwie ärgert es mich, dass man bei Unterklassen den Konstrukter der Elternklasse explizit aufrufen muss. Das ist bei anderen OOP Sprachen nicht so, oder?


Ach, das geht ja Breites Grinsen

In Py3 wurde das auch deutlich gelindert, statt super(Typ, self).__init__() schreibt man jetzt super().methode(...) [1]

(__new__ ist btw der Konstruktor, __init__ ist der Initialisierer; die Unterscheidung machen die meisten OO-Sprachen nicht)

[1] Das neue super() kann man immernoch in Python erklären, mittels Inspektion und Stack.
22.04.2016 11:20:14  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
hoschi

hoschi
Ich haette viel frueh ein Twix essen sollen, jetzt geht es mir besser. Laut Packung sind die alle umhuellt fröhlich
22.04.2016 14:53:10  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
[KdM]MrDeath

mrdeath2
 
Zitat von YT

 
Zitat von [KdM]MrDeath

und ich mich um die studienarbeit prokrastinieren :/



Zweitstudium ?!?!?


nö, warum? Breites Grinsen
22.04.2016 14:58:13  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
[KdM]MrDeath

mrdeath2
 
Zitat von csde_rats


In Py3 wurde das auch deutlich gelindert, statt super(Typ, self).__init__() schreibt man jetzt super().methode(...) [1]



hmmm ok, da hatte ich das andersrum im kopf, dachte super() wär das alte... da hat mir glaube ich pycharm und pylint immer nen streich gespielt :/
22.04.2016 15:01:39  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Phillinger

AUP Phillinger 11.02.2013
Kennt sich hier irgendeiner mit Samba als Active Directory Domain Controller aus? Speziell das Mapping der uid & gid per winbind?

ICH KRIEG DEN DRECK NÄMLICH UM's VERRECKEN NICHT ZUM FLIEGEN!! Wütend
22.04.2016 16:43:01  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
ShinyDoofy

Shiny doofy
betruebt gucken
Meine Glaskugel sagt: So schaue er in die Logs und vergleiche seine Konfiguration mit der vorgegebenen.
23.04.2016 20:38:19  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Phillinger

AUP Phillinger 11.02.2013
War jetzt kein sehr qualifizierter Hilferuf meinerseits, schon klar.


Die Logs sagen mal exakt gar nix, das ist ja das Problem. Er holt sich ja brav die UNIX-Attribute der im AD angelegten Nutzer. Aber halt nicht alle!

cn und samaccountname holt er sich. Aber uid, gid, shell und home sind ihm völlig egal. Damit ist es halt aber leider unmöglich, shares anzulegen.

Ich habe den Eindruck, ich verpasse hier irgendwas ganz einfaches, aber grundlegendes.

Im Samba-Wiki heißt es nur lapidar:
 
Additionally using distinct file servers avoids the idiosyncrasies in the winbindd configuration on the Active Directory Domain Controller. The Samba team does not recommend using a Samba-based Domain Controller as a file server, and recommend that users run a separate Domain Member with file shares.


Also wissen die wohl, dass das Mapping von winbind ein ziemlicher Fuck-Up sein kann - dokumentieren aber nirgends, wie man das umgehen kann. Außer durch einen dezidierten Fileserver. Ja klar, ist für so ne kleine Klitsche natürlich gar kein Problem, einfach noch so nen Stromfresser neben dran zu stellen, nur weil winbind spinnt. Wütend
23.04.2016 21:14:12  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
audax

AUP audax 11.04.2020
Virtualisierung du suchst, junger Padawan.
23.04.2016 22:33:05  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Phillinger

AUP Phillinger 11.02.2013
 
Zitat von audax

Virtualisierung du suchst, junger Padawan.


Da habe ich auch schon dran gedacht. Aber irgendwie widerstrebt es mir, das eigentliche Problem damit zu umgehen, anstatt es zu lösen.
23.04.2016 22:36:37  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
audax

AUP audax 11.04.2020
Ist sowieso nicht die blödeste Idee, Dinge zu virtualisieren. Allerdings hab ich auch gerade ne 3-tägige AWS Schulung hinter mir. peinlich/erstaunt
23.04.2016 22:41:56  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
audax

AUP audax 11.04.2020
scnr
https://aws.amazon.com/de/blogs/aws/new-aws-directory-service/
23.04.2016 22:44:12  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
TheRealHawk

AUP TheRealHawk 26.11.2007
Dem Thema verweigert sich mein ehemaliger Chef bis heute. Lieber für jeden Kack dedizierte Hardware abstellen, als könnte man VMs nicht teuer abrechnen. Vermutlich will er keine komplexere Infrastruktur aufbauen weil kein Admin länger als sechs Monate bleibt und er selbst noch auf dem Stand von vor 15 Jahren festhängt
23.04.2016 22:45:57  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Phillinger

AUP Phillinger 11.02.2013
Ich "verweigere" mich der Virtualisierung ja nicht mal. Nur habe ich schlicht keine Zeit, mich damit derart zu befassen, dass ich behaupten könnte, das ganze sicher zu betreiben.
23.04.2016 22:52:22  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
GandalfDerPinke

GandalfDerPinke
Ach, learning by doing. peinlich/erstaunt
23.04.2016 22:53:47  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Phillinger

AUP Phillinger 11.02.2013
Beschreibt mein täglich Brot ganz gut. peinlich/erstaunt
23.04.2016 22:54:43  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
audax

AUP audax 11.04.2020
unglaeubig gucken
Einfach in die Cloud gehen.
24.04.2016 0:49:06  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
csde_rats

AUP csde_rats 04.09.2021
py.test-Prozesse segfaulten nach ===== 2839021890 passed in 1 parsec =====

24.04.2016 11:45:45  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Oli

AUP Oli 21.12.2018
unglaeubig gucken
parsec?
24.04.2016 12:03:46  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
[KdM]MrDeath

mrdeath2
ich seh hier schon morgen die nächsten fünf seiten aufbloppen Augenzwinkern
http://www.golem.de/news/mx-speed-cherry-macht-mechanische-switches-noch-schneller-1604-120517.html
25.04.2016 3:07:36  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
statixx

AUP statixx 14.11.2023
Kein taktiles feedback. :/
25.04.2016 7:22:50  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
TheRealHawk

AUP TheRealHawk 26.11.2007
unglaeubig gucken
Gerade versehentlich history | aptitude statt history | grep aptitude eingegeben und aptitude fängt tatsächlich an Dinge zu tun.
25.04.2016 15:38:34  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Oli

AUP Oli 21.12.2018
Ich habe 4 identische SSDs, die in 4 identische Server sollen. Kann ich ein OS einfach auf der einen installieren und dann mittels dd auf die anderen schreiben?
26.04.2016 11:54:44  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
TheRealHawk

AUP TheRealHawk 26.11.2007
verschmitzt lachen
Wenns nicht Windows ist ja. rsync wäre aber effizienter.
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von TheRealHawk am 26.04.2016 11:58]
26.04.2016 11:57:48  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Oli

AUP Oli 21.12.2018
Aber rsync kopiert die partitionstabelle doch nicht
26.04.2016 12:09:56  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
TheRealHawk

AUP TheRealHawk 26.11.2007
sfdisk -d /dev/sdx > partitionen
sfdisk /dev/sdx < partitionen
26.04.2016 12:15:59  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
[KdM]MrDeath

mrdeath2
identische server?
also auch die mac adressen der netzwerkkarten identisch? Augenzwinkern

ansonsten musste zumindest noch /etc/udev/rules.d/70-persistent-net.... löschen.
identische sshd server keys sind jetzt auch so ne sache, aber das lässt sich ja nachträglich fixen.
26.04.2016 14:04:05  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Oli

AUP Oli 21.12.2018
Die Konfiguration mache ich nachher einzeln, sind nur 4 Maschinen.

dd dauert ja ewig. traurig
26.04.2016 14:32:05  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
B0rG*

Gordon
Hast du daran gedacht die Blocksize hochzustellen?
dd if=/dev/sdArr of=/dev/sdBee bs=64k
[Dieser Beitrag wurde 2 mal editiert; zum letzten Mal von B0rG* am 26.04.2016 14:36]
26.04.2016 14:34:55  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
 Thema: 30*100 gute Gründe für Linux ( Jeder Post zählt )
« 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 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 nächste »

mods.de - Forum » Linux » 

Hop to:  

Thread-Tags:
Mod-Aktionen:
15.12.2016 22:05:45 teK hat diesen Thread geschlossen.
15.04.2016 22:53:28 teK hat den Thread-Titel geändert (davor: "3000 gute Gründe für Linux")

| tech | impressum