{"id":2933,"date":"2017-03-25T01:39:14","date_gmt":"2017-03-25T00:39:14","guid":{"rendered":"http:\/\/roboblog.fatal-fury.de\/?p=2933"},"modified":"2017-03-25T01:39:14","modified_gmt":"2017-03-25T00:39:14","slug":"c-guns-dangling-reference-ii","status":"publish","type":"post","link":"http:\/\/roboblog.fatal-fury.de\/?p=2933","title":{"rendered":"C++ Guns - Dangling Reference II"},"content":{"rendered":"<p>F\u00fcr die, die es immer noch nicht kapiert haben: Hier noch ein einfachereres Beispiel. Tempor\u00e4re Objekte, alles klar? Speichert keine Referenzen, es gibt kein Grund das zu tun. Sonst schie\u00dft ich euch in den Fu\u00df. In jede Zehe einzeln.<\/p>\n<pre><code>\r\nbool alive = true;\r\n\r\nstruct Foo {\r\n  Foo() { }\r\n  ~Foo() { alive = false; }\r\n};\r\n\r\nstruct Bar {\r\n  const Foo& dangling;\r\n  \r\n  Bar(const Foo& foo) : dangling(foo) { }\r\n  \r\n  void func() {\r\n    if(alive) {\r\n      cout << \"dangling is okay\\n\";\r\n    } else {\r\n      cout << \"dangling is dangling\\n\";\r\n    }\r\n  }\r\n};\r\n\r\nint main() {\r\n  Bar bar{Foo{}};\r\n  bar.func();\r\n  return 0;\r\n}\r\n<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>F\u00fcr die, die es immer noch nicht kapiert haben: Hier noch ein einfachereres Beispiel. Tempor\u00e4re Objekte, alles klar? Speichert keine Referenzen, es gibt kein Grund das zu tun. Sonst schie\u00dft ich euch in den Fu\u00df. In jede Zehe einzeln. bool alive = true; struct Foo { Foo() { } ~Foo() { alive = false; } [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[17],"class_list":["post-2933","post","type-post","status-publish","format-standard","hentry","category-allgemein","tag-cpp"],"_links":{"self":[{"href":"http:\/\/roboblog.fatal-fury.de\/index.php?rest_route=\/wp\/v2\/posts\/2933","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/roboblog.fatal-fury.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/roboblog.fatal-fury.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/roboblog.fatal-fury.de\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/roboblog.fatal-fury.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2933"}],"version-history":[{"count":2,"href":"http:\/\/roboblog.fatal-fury.de\/index.php?rest_route=\/wp\/v2\/posts\/2933\/revisions"}],"predecessor-version":[{"id":2935,"href":"http:\/\/roboblog.fatal-fury.de\/index.php?rest_route=\/wp\/v2\/posts\/2933\/revisions\/2935"}],"wp:attachment":[{"href":"http:\/\/roboblog.fatal-fury.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2933"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/roboblog.fatal-fury.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2933"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/roboblog.fatal-fury.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2933"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}