<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Instant to mpq_class]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>bin relativ neu und versuche einen Code zu verstehe.<br />
Wer kann mir das hier erklären, das gelingt mir nicht wirklich´</p>
<p>Danke!</p>
<p>mpq_class ItoMPQ( const Instant i )<br />
{<br />
mpq_class res = mpq_class(0);<br />
int days = (int)i.ToDouble();<br />
const int rest = i.GetAllMilliSeconds();<br />
const int milliseconds = 86400000;<br />
res = days + mpq_class(rest, milliseconds);<br />
res.canonicalize();<br />
return res;<br />
}</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/330422/instant-to-mpq_class</link><generator>RSS for Node</generator><lastBuildDate>Fri, 03 Jul 2026 11:35:35 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/330422.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 09 Jan 2015 13:03:42 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Instant to mpq_class on Fri, 09 Jan 2015 13:03:42 GMT]]></title><description><![CDATA[<p>Hallo zusammen,</p>
<p>bin relativ neu und versuche einen Code zu verstehe.<br />
Wer kann mir das hier erklären, das gelingt mir nicht wirklich´</p>
<p>Danke!</p>
<p>mpq_class ItoMPQ( const Instant i )<br />
{<br />
mpq_class res = mpq_class(0);<br />
int days = (int)i.ToDouble();<br />
const int rest = i.GetAllMilliSeconds();<br />
const int milliseconds = 86400000;<br />
res = days + mpq_class(rest, milliseconds);<br />
res.canonicalize();<br />
return res;<br />
}</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2436698</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2436698</guid><dc:creator><![CDATA[SusanneS]]></dc:creator><pubDate>Fri, 09 Jan 2015 13:03:42 GMT</pubDate></item><item><title><![CDATA[Reply to Instant to mpq_class on Fri, 09 Jan 2015 13:26:31 GMT]]></title><description><![CDATA[<p>Ich bin verwirrt.</p>
<p>Geht es um ein inhaltliches oder ein syntaktisches Verständnisproblem?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2436700</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2436700</guid><dc:creator><![CDATA[Ruvi]]></dc:creator><pubDate>Fri, 09 Jan 2015 13:26:31 GMT</pubDate></item><item><title><![CDATA[Reply to Instant to mpq_class on Fri, 09 Jan 2015 13:26:53 GMT]]></title><description><![CDATA[<p>Keine Ahnung was mpq_class ist =&gt; keine Erklärung möglich</p>
<p>Die Funktion wurde jedenfalls von einem Dilettanten geschrieben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2436701</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2436701</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Fri, 09 Jan 2015 13:26:53 GMT</pubDate></item><item><title><![CDATA[Reply to Instant to mpq_class on Fri, 09 Jan 2015 13:31:19 GMT]]></title><description><![CDATA[<p>ich verstehe tatsächlich nicht, was insbesondere hier passiert</p>
<p>const int milliseconds = 86400000;<br />
res = days + mpq_class(rest, milliseconds);<br />
res.canonicalize();</p>
<p>Ich kenne den Ersteller nicht, wie würdest du es machen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2436704</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2436704</guid><dc:creator><![CDATA[SusanneS]]></dc:creator><pubDate>Fri, 09 Jan 2015 13:31:19 GMT</pubDate></item><item><title><![CDATA[Reply to Instant to mpq_class on Fri, 09 Jan 2015 13:41:21 GMT]]></title><description><![CDATA[<p>Ohne, dass du uns den Code von mpq_class zeigst koennen wir Dir nicht helfen.</p>
<p>Am Besten auch von Instant i.<br />
Ansonsten wird da ein const int mit einem Wert angelegt.<br />
86400000 = 24 Stunden.</p>
<p>Danach erfolgt anscheinend irgendeine Art von Addierung mit Hilfe eines überladenen Operators in mpq_class.</p>
<p>Danach wird Member-Funktion canonicalize aufgerufen, die anscheinend irgendein Format herstellt jedenfalls wuerde das der Name suggerieren.</p>
<p>Danach wird ein mpq_class per Kopie zurueckgegeben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2436706</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2436706</guid><dc:creator><![CDATA[Ruvi]]></dc:creator><pubDate>Fri, 09 Jan 2015 13:41:21 GMT</pubDate></item><item><title><![CDATA[Reply to Instant to mpq_class on Fri, 09 Jan 2015 13:40:51 GMT]]></title><description><![CDATA[<p>mpq_class ist ein Datentyp aus der GNU der sehr genau ist<br />
Instant ??? keine Ahnung, mal schauen ob ich da was finden kann</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2436707</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2436707</guid><dc:creator><![CDATA[SusanneS]]></dc:creator><pubDate>Fri, 09 Jan 2015 13:40:51 GMT</pubDate></item><item><title><![CDATA[Reply to Instant to mpq_class on Fri, 09 Jan 2015 13:48:23 GMT]]></title><description><![CDATA[<p>Instant beeinhaltet eine Zeit</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2436711</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2436711</guid><dc:creator><![CDATA[SusanneS]]></dc:creator><pubDate>Fri, 09 Jan 2015 13:48:23 GMT</pubDate></item><item><title><![CDATA[Reply to Instant to mpq_class on Fri, 09 Jan 2015 14:07:13 GMT]]></title><description><![CDATA[<p>ich konnte genau finden:</p>
<p>typedef DateTime Instant;</p>
<p>in einem h-file</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2436715</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2436715</guid><dc:creator><![CDATA[SusanneS]]></dc:creator><pubDate>Fri, 09 Jan 2015 14:07:13 GMT</pubDate></item><item><title><![CDATA[Reply to Instant to mpq_class on Fri, 09 Jan 2015 15:15:00 GMT]]></title><description><![CDATA[<p>SusanneS schrieb:</p>
<blockquote>
<p>Ich kenne den Ersteller nicht, wie würdest du es machen?</p>
</blockquote>
<p>Mal kurz drüber gebügelt:</p>
<pre><code class="language-cpp">const int dayInMilliseconds = 86400000;

mpq_class ItoMPQ( const Instant&amp; i )
{
  int days = i.ToDouble();
  mpq_class res = days + mpq_class( i.GetAllMilliSeconds(), dayInMilliseconds );
  res.canonicalize();
  return res;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2436733</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2436733</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Fri, 09 Jan 2015 15:15:00 GMT</pubDate></item><item><title><![CDATA[Reply to Instant to mpq_class on Fri, 09 Jan 2015 15:27:47 GMT]]></title><description><![CDATA[<p>HI,</p>
<p>das verstehe ich besser.<br />
Was passiert hier: res.canonicalize();</p>
<p>UND wie würde daraus die Umkehrung aussehen?</p>
<p>Herzlichen Dank!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2436735</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2436735</guid><dc:creator><![CDATA[SusanneS]]></dc:creator><pubDate>Fri, 09 Jan 2015 15:27:47 GMT</pubDate></item><item><title><![CDATA[Reply to Instant to mpq_class on Fri, 09 Jan 2015 16:50:45 GMT]]></title><description><![CDATA[<p>@manni: Erster Treffer bei <a href="https://www.google.de/search?&amp;q=mpq_class" rel="nofollow">Google: mpq_class</a> ist <a href="https://gmplib.org/manual/C_002b_002b-Interface-Rationals.html" rel="nofollow">die Dokumentation von GNU</a>, auf der im Übrigen auch <code>canocicalize</code> definiert ist:</p>
<blockquote>
<p>Was passiert hier:</p>
<pre><code>res.canonicalize();
</code></pre>
</blockquote>
<p>Der Bruch wird gekürzt<sup>1</sup>. Die Umkehrung davon wäre demnach das Erweitern, i.e., die Multiplikation des Nenners und Zählers mit einer Ganzzahl ungleich 0 ( <code>mpq_class</code> repräsentiert, wie du wissen solltest, Brüche mit ganzzahligen Zählern/Nennern).</p>
<p>Außerdem wäre die Definition von <code>DateTime</code> nicht schlecht.</p>
<p><sup>1</sup> Außerdem wird dafür gesorgt dass der Nenner positiv ist. Falls dir übrigens der Begriff &quot;kürzen&quot; in diesem Kontext nichts sagt, hast du ein Problem.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2436743</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2436743</guid><dc:creator><![CDATA[Columbo]]></dc:creator><pubDate>Fri, 09 Jan 2015 16:50:45 GMT</pubDate></item><item><title><![CDATA[Reply to Instant to mpq_class on Fri, 09 Jan 2015 16:58:04 GMT]]></title><description><![CDATA[<p>Vielen Dank!</p>
<p>Kürzen kenne ich <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2436749</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2436749</guid><dc:creator><![CDATA[SusanneS]]></dc:creator><pubDate>Fri, 09 Jan 2015 16:58:04 GMT</pubDate></item></channel></rss>