<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>misto's blog &#187; c++</title>
	<atom:link href="http://blog.misto.ch/archives/tag/c/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.misto.ch</link>
	<description>blog über mich und interessante dinge aus dem alltag. oft auch etwas aus der informatik</description>
	<lastBuildDate>Sun, 06 Sep 2009 14:01:04 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>GCC 4.4</title>
		<link>http://blog.misto.ch/archives/1222</link>
		<comments>http://blog.misto.ch/archives/1222#comments</comments>
		<pubDate>Thu, 16 Apr 2009 14:19:59 +0000</pubDate>
		<dc:creator>misto</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[c++]]></category>

		<guid isPermaLink="false">http://blog.misto.ch/?p=1222</guid>
		<description><![CDATA[GCC 4.4 kommt bald, und hat schon einige Unterstützung für den nächsten C++ Standard, erfreulicherweise auch Proposal 1984: deducing the type of variable from its initializer expression. Damit ist folgendes möglich:
for (auto it = x.begin(); it != x.end(); ++it) ...
(Apropos for loop, leider noch keine Unterstützung für den range based for loop.)
]]></description>
			<content:encoded><![CDATA[<p>GCC 4.4 <a href="http://www.heise.de/open/GNU-Compiler-Collection-4-4-vor-der-Tuer--/news/meldung/136288">kommt bald</a>, und hat schon einige <a href="http://gcc.gnu.org/gcc-4.4/cxx0x_status.html">Unterstützung für den nächsten C++ Standard</a>, erfreulicherweise auch <a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1984.pdf">Proposal 1984: deducing the type of variable from its initializer expression</a>. Damit ist folgendes möglich:</p>
<p><code>for (auto it = x.begin(); it != x.end(); ++it) ...</code></p>
<p>(Apropos for loop, leider noch keine Unterstützung für den <a href="http://www.generic-programming.org/languages/conceptcpp/papers/n2049.pdf">range based for loop</a>.)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.misto.ch/archives/1222/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Code Analysis and Refactoring with CDT</title>
		<link>http://blog.misto.ch/archives/912</link>
		<comments>http://blog.misto.ch/archives/912#comments</comments>
		<pubDate>Sat, 22 Nov 2008 00:41:46 +0000</pubDate>
		<dc:creator>misto</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[c++]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[refactoring]]></category>

		<guid isPermaLink="false">http://blog.misto.ch/?p=912</guid>
		<description><![CDATA[Doug Schäfers Slides vom Eclipse Summit Europe sind nun online verfügbar. Für uns Insider natürlich nicht viel neues, aber es ist doch schön, wenn jemand unsere Arbeit präsentiert. Irgendwie cool   Ausserdem hats sogar Code von mir in der Präsentation:

Super, was? So, und nun &#8220;spread the word on what can be done and how&#8221;, [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.slideshare.net/dschaefer/code-analysis-and-refactoring-with-cdt-presentation?type=powerpoint">Doug Schäfers Slides vom Eclipse Summit Europe</a> sind nun online verfügbar. Für uns Insider natürlich nicht viel neues, aber es ist doch schön, wenn jemand unsere Arbeit präsentiert. Irgendwie cool <img src='http://blog.misto.ch/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  Ausserdem hats sogar Code von mir in der Präsentation:</p>
<p><img src="/wp-content/cdt_code_von_mir.png" /></p>
<p>Super, was? So, und nun &#8220;spread the word on what can be done and how&#8221;, wie Doug auf der letzten Folie aufruft.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.misto.ch/archives/912/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Anzeichen des Wahnsinns</title>
		<link>http://blog.misto.ch/archives/857</link>
		<comments>http://blog.misto.ch/archives/857#comments</comments>
		<pubDate>Sun, 16 Nov 2008 17:34:17 +0000</pubDate>
		<dc:creator>misto</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[c++]]></category>

		<guid isPermaLink="false">http://blog.misto.ch/?p=857</guid>
		<description><![CDATA[Ein Zeichen vertippt:

Und trotz allem mag ich die Sprache sehr.
]]></description>
			<content:encoded><![CDATA[<p>Ein Zeichen vertippt:</p>
<p><a href="http://blog.misto.ch/wp-content/waahnsinn.png"><img src="http://blog.misto.ch/wp-content/waahnsinn-300x245.png" alt="" title="waahnsinn" width="300" height="245" class="alignnone size-medium wp-image-865" /></a></p>
<p>Und trotz allem mag ich die Sprache sehr.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.misto.ch/archives/857/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Neues im Ganymede CDT</title>
		<link>http://blog.misto.ch/archives/608</link>
		<comments>http://blog.misto.ch/archives/608#comments</comments>
		<pubDate>Mon, 23 Jun 2008 10:26:47 +0000</pubDate>
		<dc:creator>misto</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[c++]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[refactoring]]></category>

		<guid isPermaLink="false">http://blog.misto.ch/?p=608</guid>
		<description><![CDATA[Gibts bei Emanuel.
]]></description>
			<content:encoded><![CDATA[<p>Gibts bei <a href="http://www.emanuel.graf.name/snipsnap/space/start/2008-06-23/1#Eclipse_Ganymede:_Neues_im_CDT_5.0">Emanuel</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.misto.ch/archives/608/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CDT C++ Refactorings in Ganymede!</title>
		<link>http://blog.misto.ch/archives/578</link>
		<comments>http://blog.misto.ch/archives/578#comments</comments>
		<pubDate>Fri, 16 May 2008 13:44:12 +0000</pubDate>
		<dc:creator>misto</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[c++]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[refactoring]]></category>

		<guid isPermaLink="false">http://blog.misto.ch/?p=578</guid>
		<description><![CDATA[Jawohl, es ist soweit, heute wurde unser letzter grosser Patch angenommen. Folgendes Menu wird also jedermann Ende Juni im neusten CDT-Release vorfinden:

Zudem haben die Committer-Abstimmungen für Emanuel Graf heute begonnen, 5 Stimmen hat er schon &#8212; ich denke man darf bereits gratulieren  
So, und wer jetzt glaubt reklamieren zu müssen, ja, Implement Method und [...]]]></description>
			<content:encoded><![CDATA[<p>Jawohl, es ist soweit, heute wurde unser letzter grosser Patch angenommen. Folgendes Menu wird also jedermann Ende Juni im neusten CDT-Release vorfinden:</p>
<p><img src="http://blog.misto.ch/wp-content/refactoring_menu.png" /></p>
<p>Zudem haben die Committer-Abstimmungen für Emanuel Graf heute begonnen, 5 Stimmen hat er schon &#8212; ich denke man darf bereits gratulieren <img src='http://blog.misto.ch/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>So, und wer jetzt glaubt reklamieren zu müssen, ja, <em>Implement Method</em> und <em>Generate Getters and Setters</em> sind keine Refactorings, aber es lohnt sich (noch) nicht, für zwei Einträge ein Top-Level Source-Menu einzuführen.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.misto.ch/archives/578/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>CDT C++ Refactoring Plug-In in Ganymede?</title>
		<link>http://blog.misto.ch/archives/540</link>
		<comments>http://blog.misto.ch/archives/540#comments</comments>
		<pubDate>Sun, 02 Mar 2008 02:12:56 +0000</pubDate>
		<dc:creator>misto</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[c++]]></category>
		<category><![CDATA[eclipse]]></category>
		<category><![CDATA[refactoring]]></category>

		<guid isPermaLink="false">http://blog.misto.ch/archives/540</guid>
		<description><![CDATA[Am letzten Mittwoch haben wir einen grossen Schritt getan und die notwendigen Patches für den C++ Refactoring-Support für CDT fertiggestellt.
Der Gesamtumfang der Patches beträgt knapp 24000 Zeilen, wobei schlussendlich nur ein einziges Refactoring (Extract Constant) inbegriffen ist, der Rest dient als Basis für weitere Refactorings, welche in nächster Zeit folgen werden, und umfasst Dinge wie [...]]]></description>
			<content:encoded><![CDATA[<p>Am letzten Mittwoch haben <a href="http://ifs.hsr.ch">wir</a> einen grossen Schritt getan und die notwendigen Patches für den C++ Refactoring-Support für CDT fertiggestellt.</p>
<p>Der Gesamtumfang der Patches beträgt knapp 24000 Zeilen, wobei schlussendlich nur ein einziges Refactoring (Extract Constant) inbegriffen ist, der Rest dient als Basis für weitere Refactorings, welche in nächster Zeit folgen werden, und umfasst Dinge wie <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=214334">Source-Transformationen</a>, Code re-writing, Kommentarbehandlung, und natürlich ganz viele Tests. Wir hoffen, damit (endlich) den Sprung zu schaffen und ein offizieller Teil des CDT zu werden. Langfristiges Ziel ist natürlich, selbst Committer zu werden, allerdings ist das nicht so einfach wie man meinen könnte (in dieser Hinsicht unterscheidet sich Eclipse von den meisten anderen Open-Source Projekten die ich kenne). Jetzt können wir nur noch hoffen, dass wir möglichst rasch durch das <a href="http://www.eclipse.org/projects/dev_process/ip-process-in-cartoons.php">IP-Review</a> kommen und unser Code schnell im CVS landet (das Arbeiten mit gepatchten Quellen auf die man nicht committen kann ist nicht besonders spassig :/ ).</p>
<p>Wer das ganze genauer mitverfolgen will, sollte sich bei <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=181493">den</a> <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=214605">beiden</a> relevanten Bug-Reports anhängen, oder gleich <a href="http://r2.ifs.hsr.ch/cdtrefactoring">bei unserem Trac</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.misto.ch/archives/540/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Sprachquiz</title>
		<link>http://blog.misto.ch/archives/517</link>
		<comments>http://blog.misto.ch/archives/517#comments</comments>
		<pubDate>Sun, 20 Jan 2008 13:32:57 +0000</pubDate>
		<dc:creator>misto</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[c++]]></category>
		<category><![CDATA[java]]></category>

		<guid isPermaLink="false">http://blog.misto.ch/archives/517</guid>
		<description><![CDATA[Kurze Frage, in welcher Programmiersprache ist das wohl geschrieben:
a->Foo = b->Foo;
 
So, wer meint C++? Natürlich, wäre möglich, es könnte aber auch Java 7 sein, zumindest wenn es nach Danny Coward (Java SE 7 Platform Lead) geht. In einer Präsentation (Seite 27) stellt er die Java Beans Properties vor. Für ein solches Property würde man [...]]]></description>
			<content:encoded><![CDATA[<p>Kurze Frage, in welcher Programmiersprache ist das wohl geschrieben:<br />
<code>a->Foo = b->Foo;</code></p>
<p><span id="more-517"></span> </p>
<p>So, wer meint C++? Natürlich, wäre möglich, es könnte aber auch Java 7 sein, zumindest wenn es nach Danny Coward (Java SE 7 Platform Lead) geht. In <a href="http://blogs.sun.com/dannycoward/resource/Java7Overview_Prague_JUG.pdf">einer Präsentation</a> (Seite 27) stellt er die Java Beans Properties vor. Für ein solches Property würde man anstelle der Getter/Setter nur noch<br />
<code>public property String foo;</code> schreiben, und der Zugriff würde dann wie oben aussehen.</p>
<p>Irgendwie sehe ich aber den Vorteil dieser Properties noch nicht so ganz, man könnte das Feld ja auch einfach public machen..</p>
<p>Übrigens, die Präsentation ist schon fast ein Jahr alt, falls das also schon alter Käse ist entschuldige ich mich dafür, ich bin erst heute darauf gestossen.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.misto.ch/archives/517/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>C++ kriegt Lambda-Ausdrücke</title>
		<link>http://blog.misto.ch/archives/505</link>
		<comments>http://blog.misto.ch/archives/505#comments</comments>
		<pubDate>Thu, 03 Jan 2008 22:59:41 +0000</pubDate>
		<dc:creator>misto</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[c++]]></category>
		<category><![CDATA[neuigkeit]]></category>

		<guid isPermaLink="false">http://blog.misto.ch/archives/505</guid>
		<description><![CDATA[Während einer Diskussion im IFS heute kamen wir auf Features im neuen C++-Standard zu sprechen, vor allem wegen Templates und den neuen Concept Maps (im Prinzip eine Möglichkeit, um Templates zu prüfen, ob sie gewisse Voraussetzungen erfüllen. Soll vor allem endlich anständige Fehlermeldungen in diesem Bereich bringen.). Ich wusste zwar immerhin, dass bald ein neuer [...]]]></description>
			<content:encoded><![CDATA[<p>Während einer Diskussion im IFS heute kamen wir auf Features im neuen C++-Standard zu sprechen, vor allem wegen Templates und den neuen Concept Maps (im Prinzip eine Möglichkeit, um Templates zu prüfen, ob sie gewisse Voraussetzungen erfüllen. Soll vor allem endlich anständige Fehlermeldungen in diesem Bereich bringen.). Ich wusste zwar immerhin, dass bald ein neuer Standard erscheint, aber was der genau beinhaltet war mir auch noch nicht klar. Heute Abend beim lesen des <a href="http://en.wikipedia.org/wiki/C++0x">entsprechenden Wikipedia Artikels</a> habe ich noch was viel cooleres gefunden: Lambda functions and expressions! Und dazu passend natürlich auch Closures. Auf die Schnelle ist mir nichts besseres eingefallen, deshalb verwende ich einfach das Wikipedia-Beispiel:<br />
<code>vector&lt;int&gt; liste;<br />
int total = 0;<br />
for_each(liste.begin(), liste.end(), &lt;&gt;(int x; &#038;total) (total += x));</code></p>
<p>Cool, nicht? Ist zwar noch nicht ganz so elegant wie in Ruby, aber doch nicht übel.<br />
<code>[2, 5].inject(0) {|sum, i| sum += i} # => 7</code></p>
<p>Jetzt könnte man noch eine Wette abschliessen, wann Java nachzieht. Schliesslich kann C# es auch&#8230;</p>
<p>Und ja, mit Boost hat man eigentlich bereits Lambda-Ausdrücke, die Nachteile werden im C++0x <a href="http://www.research.att.com/~bs/N1968-lambda-expressions.pdf">Proposal</a> auch diskutiert.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.misto.ch/archives/505/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>C++ Refactoring Plug-in for CDT: Milestone 1 released</title>
		<link>http://blog.misto.ch/archives/415</link>
		<comments>http://blog.misto.ch/archives/415#comments</comments>
		<pubDate>Fri, 17 Aug 2007 13:27:50 +0000</pubDate>
		<dc:creator>misto</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[c++]]></category>
		<category><![CDATA[HSR]]></category>
		<category><![CDATA[neuigkeit]]></category>
		<category><![CDATA[refactoring]]></category>
		<category><![CDATA[werbung]]></category>

		<guid isPermaLink="false">http://blog.misto.ch/archives/415</guid>
		<description><![CDATA[Es ist so weit, nach einigen Monaten Entwicklungszeit haben wir heute den ersten Milestone vom C++ Refactoring-Plug-In fürs CDT erreicht und veröffentlicht. Am einfachsten ist es wohl, einfach ein Eclipse 3.3 mit CDT zu nehmen und dann über die Update Site unser Plug-In zu installieren.
Also, einfach mal ausprobieren und uns bitte Bugs melden  . [...]]]></description>
			<content:encoded><![CDATA[<p>Es ist so weit, nach einigen Monaten Entwicklungszeit haben wir heute den ersten Milestone vom <a href="http://r2.ifs.hsr.ch/cdtrefactoring/wiki">C++ Refactoring-Plug-In</a> fürs CDT erreicht und veröffentlicht. Am einfachsten ist es wohl, einfach ein Eclipse 3.3 mit CDT zu nehmen und dann über die <a href="http://ifs.hsr.ch/cdtrefactoring/updatesite/">Update Site</a> unser Plug-In zu installieren.</p>
<p>Also, einfach mal ausprobieren und uns bitte Bugs melden <img src='http://blog.misto.ch/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> . Aber bitte gnädig sein, es ist erst Milestone 1.</p>
<p>Auf ausdrücklichen Wunsch von <a href="http://www.emanuel.graf.name/snipsnap/space/start">Emanuel</a> soll ich hier noch erwähnen: Er ist der Chef!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.misto.ch/archives/415/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Implement Method für CDT</title>
		<link>http://blog.misto.ch/archives/407</link>
		<comments>http://blog.misto.ch/archives/407#comments</comments>
		<pubDate>Sat, 11 Aug 2007 13:59:25 +0000</pubDate>
		<dc:creator>misto</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[c++]]></category>
		<category><![CDATA[programmieren]]></category>
		<category><![CDATA[refactoring]]></category>

		<guid isPermaLink="false">http://blog.misto.ch/archives/407</guid>
		<description><![CDATA[Seit bald drei Wochen arbeite ich auch am CDT Refactoring Plug-In mit und habe meinen ersten Task abgeschlossen, und zwar &#8216;Implement Method&#8217;. Das ist zwar kein Refactoring, aber trotzdem sehr nützlich. Es geht darum, aus einer Methodendeklaration die entsprechende Implementation zu erstellen. Man muss also nicht mehr den Methodennamen kopieren, ins .cpp File wechseln, einfügen [...]]]></description>
			<content:encoded><![CDATA[<p>Seit bald drei Wochen arbeite ich auch am CDT Refactoring Plug-In mit und habe meinen ersten Task abgeschlossen, und zwar &#8216;Implement Method&#8217;. Das ist zwar kein Refactoring, aber trotzdem sehr nützlich. Es geht darum, aus einer Methodendeklaration die entsprechende Implementation zu erstellen. Man muss also nicht mehr den Methodennamen kopieren, ins .cpp File wechseln, einfügen und anpassen, sondern erledigt dies mit einem Tastendruck (ok, 3 Tasten). </p>
<p>Am besten einfach mal den <a href="http://r2.ifs.hsr.ch/cdtrefactoring/chrome/site/implement_method.htm">Screencast</a> den ich gemacht habe anschauen um alle Features zu sehen.</p>
<p>Der <a href="http://r2.ifs.hsr.ch/cdtrefactoring/query?status=new&#038;status=assigned&#038;status=reopened&#038;milestone=First+Release">erste Release</a> ist schon Ende nächster Woche, ab dann wird es auch einen Download für CDT 4.0 geben.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.misto.ch/archives/407/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

