<?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[Rot13 Template?]]></title><description><![CDATA[<p>Hey,</p>
<p>ist es möglich mit Templates eine Rot 13 Verschlüsselung zu erzielen?</p>
<p>Die Sache ist einfach die, dass ich nicht will, dass Texte, etc. direkt im Quellcode zu finden sind. Ich will sie daher verschleiern. Macht natürlich wenig Sinn, aber schützt zumindest gegen die &quot;einfachen&quot; Scriptkiddys.</p>
<p>Ist das möglich? Alternativen?</p>
<p>Danke für die Hilfe <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/topic/306381/rot13-template</link><generator>RSS for Node</generator><lastBuildDate>Tue, 04 Aug 2026 07:52:12 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/306381.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 26 Jul 2012 15:32:06 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Rot13 Template? on Thu, 26 Jul 2012 15:32:06 GMT]]></title><description><![CDATA[<p>Hey,</p>
<p>ist es möglich mit Templates eine Rot 13 Verschlüsselung zu erzielen?</p>
<p>Die Sache ist einfach die, dass ich nicht will, dass Texte, etc. direkt im Quellcode zu finden sind. Ich will sie daher verschleiern. Macht natürlich wenig Sinn, aber schützt zumindest gegen die &quot;einfachen&quot; Scriptkiddys.</p>
<p>Ist das möglich? Alternativen?</p>
<p>Danke für die Hilfe <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/2235980</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2235980</guid><dc:creator><![CDATA[Maaaaaarvin]]></dc:creator><pubDate>Thu, 26 Jul 2012 15:32:06 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Thu, 26 Jul 2012 15:36:21 GMT]]></title><description><![CDATA[<p>Maaaaaarvin schrieb:</p>
<blockquote>
<p>Die Sache ist einfach die, dass ich nicht will, dass Texte, etc. direkt im Quellcode zu finden sind.</p>
</blockquote>
<p>Im Quellcode? Im Binary dürfen sie dann aber im Klartext stehen? Schlauer Plan ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2235981</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2235981</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Thu, 26 Jul 2012 15:36:21 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Thu, 26 Jul 2012 15:38:25 GMT]]></title><description><![CDATA[<p>Wie meinst du im Quellcode? Du meinst gewiss, dass man sie nicht finden soll, wenn man direkt im der *.exe sucht oder meinst du wirklich deine Source Files?</p>
<p>MfG</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2235982</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2235982</guid><dc:creator><![CDATA[yihaaa]]></dc:creator><pubDate>Thu, 26 Jul 2012 15:38:25 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Thu, 26 Jul 2012 16:07:40 GMT]]></title><description><![CDATA[<p>Templates werden zur Compilezeit aufgelöst.. hm.. jetzt denk mal ganz scharf nach. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2235992</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2235992</guid><dc:creator><![CDATA[cooky451]]></dc:creator><pubDate>Thu, 26 Jul 2012 16:07:40 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Thu, 26 Jul 2012 16:19:43 GMT]]></title><description><![CDATA[<p>. o O ( ouch <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /> )</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2236000</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2236000</guid><dc:creator><![CDATA[Swordfish]]></dc:creator><pubDate>Thu, 26 Jul 2012 16:19:43 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Thu, 26 Jul 2012 17:16:54 GMT]]></title><description><![CDATA[<p>Bitte was?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2236013</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2236013</guid><dc:creator><![CDATA[Kellerautomat]]></dc:creator><pubDate>Thu, 26 Jul 2012 17:16:54 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Thu, 26 Jul 2012 18:27:52 GMT]]></title><description><![CDATA[<p>Ich habs - er will eine TMP-Version des Algorithmus basteln! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<blockquote>
<p>Die Sache ist einfach die, dass ich nicht will, dass Texte, etc. direkt im Quellcode zu finden sind.</p>
</blockquote>
<p>Und hier faengt das Problem an - wieso? Scriptkiddies? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<p>Edit: Vielleicht willst du nicht, dass man die Texte nach dem disassemblieren in der PE finden kann...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2236027</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2236027</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Thu, 26 Jul 2012 18:27:52 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Thu, 26 Jul 2012 18:34:43 GMT]]></title><description><![CDATA[<p>Leute, es muss ihm nicht <strong>jeder</strong> Forenteilnehmer erklären, dass eine Templatelösung höchstwahrscheinlich an seiner eigentlichen Anforderung vorbeigeht. Das war schon mit der ersten Antwort gesagt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2236030</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2236030</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Thu, 26 Jul 2012 18:34:43 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Thu, 26 Jul 2012 20:03:58 GMT]]></title><description><![CDATA[<p>Nehmen wir folgendes an:</p>
<pre><code class="language-cpp">const std::string MY_NAME = &quot;Name&quot;;
</code></pre>
<p>So, jetzt kompiliere ich und man findet &quot;Name&quot; in der .exe und das ohne großen Aufwand.</p>
<p>Jetzt kann ich natürlich auf <a href="http://www.rot13.de" rel="nofollow">www.rot13.de</a> gehen und mach daraus:</p>
<pre><code class="language-cpp">const std::string MY_NAME = &quot;Anzr&quot;;
</code></pre>
<p>Gut, das erfüllt meine Anforderungen. Leider muss ich jedes Mal, wenn ich die Daten ändern will erst auf <a href="http://www.rot13.de" rel="nofollow">www.rot13.de</a> gehen.</p>
<p>Idee: Ein Template, dass aus einem Klartext zur Compiletime ( <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f4a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--light_bulb"
      title=":bulb:"
      alt="💡"
    /> ) daraus Rot13 macht.</p>
<pre><code class="language-cpp">const std::string MY_NAME = ROT13(&quot;Name&quot;);
</code></pre>
<p>Dadurch findet man in der Executable (mit einem Hexeditor und Search String) &quot;Name&quot; nicht sofort und der Quelltext lässt sich trotzdem gut anpassen.</p>
<p>Muss auch nicht unbedingt Rot13 sein, kann auch was anderes sein. Mich interessiert das einfach auch, weil ich mich Frage, ob das mit einem Template oder meinetwegen auch anders möglich ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2236054</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2236054</guid><dc:creator><![CDATA[Maaaaaarvin]]></dc:creator><pubDate>Thu, 26 Jul 2012 20:03:58 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Thu, 26 Jul 2012 20:09:56 GMT]]></title><description><![CDATA[<p>SeppJ schrieb:</p>
<blockquote>
<p>Leute, es muss ihm nicht <strong>jeder</strong> Forenteilnehmer erklären, dass eine Templatelösung höchstwahrscheinlich an seiner eigentlichen Anforderung vorbeigeht. Das war schon mit der ersten Antwort gesagt.</p>
</blockquote>
<p>Na ja, verstanden hat er's ja offenbar immernoch nicht. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2236056</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2236056</guid><dc:creator><![CDATA[cooky451]]></dc:creator><pubDate>Thu, 26 Jul 2012 20:09:56 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Thu, 26 Jul 2012 20:18:41 GMT]]></title><description><![CDATA[<p>Dafür braucht man kein Template, Makros reichen aus.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2236057</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2236057</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Thu, 26 Jul 2012 20:18:41 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Thu, 26 Jul 2012 20:20:23 GMT]]></title><description><![CDATA[<p>Als erstes sollte du mal den Unterschied von Compilen und Programm starten erkennen!? Das kommt mir alles etwas komisch vor...</p>
<p>Du willst also nicht das jemand deine Executable scannt und den String findet?<br />
Du machst dir ein einfach Routine inder du deine String zuerst entschlüsselst, dann benutzt und dann wieder verschlüsselst...Dazu musst du erst dein String natürlich irgentwie verschlüsselt in deinem Programm ablegen.</p>
<p>Ich entschludige mich wenn etwas falsch verstanden habe!</p>
<p>MfG</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2236058</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2236058</guid><dc:creator><![CDATA[yihaaa]]></dc:creator><pubDate>Thu, 26 Jul 2012 20:20:23 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Fri, 27 Jul 2012 05:19:31 GMT]]></title><description><![CDATA[<p>Warum sollte eine Templatelösung nicht der richtige Ansatz sein?</p>
<p>Es ist doch genau der Zweck, dass zur Compiletime aus dem Klartext der &quot;verschleierte&quot; Text gemacht wurde, und somit auch verschleiert in der .exe zu finden ist.</p>
<p>Alles was erst zur Laufzeit geschieht setzt voraus, dass der Klartext irgendwo im Quelltext rumliegt. Und genau darum geht es doch. Das soll so nicht sein.</p>
<p>Es wird also zwei mal Rot13 geben. 1x als Templatelösung (für die Verschlüsselung zur Compiletime) und 1x als Funktion (zur letztendlichen Entschlüsselung).</p>
<p>std::string x = ROT13_T(&quot;Mein Klartext&quot;); // Compiletime (Template)</p>
<p>Daraus wird dann zur Laufzeit:<br />
std::string x = &quot;Zrva Xynegrkg&quot;; // Run time</p>
<p>Und gearbeitet wird damit dann so:<br />
MeineWicthtigeFunktion(Rot13(x)); // Run time (Funktion)</p>
<p>Ich nehme natürlich auch gerne eine alternative Lösung an. Ein Makro wird aber auch erst zur Laufzeit aufgelöst, so das wieder der Klartext in die .exe mit einfließt... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2236113</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2236113</guid><dc:creator><![CDATA[Maaaaaarvin]]></dc:creator><pubDate>Fri, 27 Jul 2012 05:19:31 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Fri, 27 Jul 2012 05:21:01 GMT]]></title><description><![CDATA[<p>yihaaa schrieb:</p>
<blockquote>
<p>Dazu musst du erst dein String natürlich irgentwie verschlüsselt in deinem Programm ablegen.</p>
</blockquote>
<p>Und genau das soll das Template erledigen. Damit ich durch den Quellcode noch gut durchsteige und einfach mal etwas ändern kann, soll das ein Template erledigen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2236115</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2236115</guid><dc:creator><![CDATA[Maaaaaarvin]]></dc:creator><pubDate>Fri, 27 Jul 2012 05:21:01 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Fri, 27 Jul 2012 06:12:13 GMT]]></title><description><![CDATA[<p>Maaaaaarvin schrieb:</p>
<blockquote>
<p>Ein Makro wird aber auch erst zur Laufzeit aufgelöst</p>
</blockquote>
<p>Nein!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2236123</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2236123</guid><dc:creator><![CDATA[Belli]]></dc:creator><pubDate>Fri, 27 Jul 2012 06:12:13 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Fri, 27 Jul 2012 06:56:56 GMT]]></title><description><![CDATA[<p>cooky451 schrieb:</p>
<blockquote>
<p>SeppJ schrieb:</p>
<blockquote>
<p>Leute, es muss ihm nicht <strong>jeder</strong> Forenteilnehmer erklären, dass eine Templatelösung höchstwahrscheinlich an seiner eigentlichen Anforderung vorbeigeht. Das war schon mit der ersten Antwort gesagt.</p>
</blockquote>
<p>Na ja, verstanden hat er's ja offenbar immernoch nicht. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
</blockquote>
<p>na da bin ich ja mal gespannt, wie es weitergeht.<br />
anscheinend hat er es von anfang an richtig verstanden, nur den quellcode falsch erwähnt.</p>
<p>welches makro oder template könnte man denn für ROT13 zur Compilezeit nehmen?</p>
<p>jenz</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2236126</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2236126</guid><dc:creator><![CDATA[jenz]]></dc:creator><pubDate>Fri, 27 Jul 2012 06:56:56 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Fri, 27 Jul 2012 06:58:22 GMT]]></title><description><![CDATA[<p>Ne, er muss es ja auch wieder entschlüsseln.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2236127</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2236127</guid><dc:creator><![CDATA[cooky451]]></dc:creator><pubDate>Fri, 27 Jul 2012 06:58:22 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Fri, 27 Jul 2012 07:10:35 GMT]]></title><description><![CDATA[<p>hat er ja auch geschrieben, dass er es wieder entschlüsseln will, eben mit seiner rot13 funktion zur laufzeit</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2236129</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2236129</guid><dc:creator><![CDATA[jenz]]></dc:creator><pubDate>Fri, 27 Jul 2012 07:10:35 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Fri, 27 Jul 2012 07:15:41 GMT]]></title><description><![CDATA[<p>Geht nicht. Du kannst String-Literale nicht zur Compilezeit ändern. Was gehen würde, ist, dass Du das Literal aus einzelnen chars zusammensetzt.<br />
So in der Art: <code>rot13&lt;'d', 'e', 'r', ' ', 'T', 'e', 'x', 't'&gt;::literal</code> . Das ist aber natürlich nicht schön.<br />
Wie wäre es, wenn Du ein kleines Programm schreibst, dass alle Deine Quellen durchgeht, und Klartext-Strings mit verschwurbelten Strings ersetzt? So schwer ist das nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2236130</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2236130</guid><dc:creator><![CDATA[Tachyon]]></dc:creator><pubDate>Fri, 27 Jul 2012 07:15:41 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Fri, 27 Jul 2012 07:17:52 GMT]]></title><description><![CDATA[<p>Ah hm ja, bleibt das Problem, dass es nicht geht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2236131</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2236131</guid><dc:creator><![CDATA[cooky451]]></dc:creator><pubDate>Fri, 27 Jul 2012 07:17:52 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Fri, 27 Jul 2012 07:20:48 GMT]]></title><description><![CDATA[<p>cooky451 schrieb:</p>
<blockquote>
<p>Ah hm ja, bleibt das Problem, dass es nicht geht.</p>
</blockquote>
<p>Wieso sollte das nicht gehen? Vermutlich würde man das zum Beispiel mit einem etwas angepassten <code>boost.assign</code> hinbekommen. Insbesondere aber mit c++11 sollte das nicht so schwer sein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2236134</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2236134</guid><dc:creator><![CDATA[Tachyon]]></dc:creator><pubDate>Fri, 27 Jul 2012 07:20:48 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Fri, 27 Jul 2012 07:42:11 GMT]]></title><description><![CDATA[<p>Tachyon schrieb:</p>
<blockquote>
<p>cooky451 schrieb:</p>
<blockquote>
<p>Ah hm ja, bleibt das Problem, dass es nicht geht.</p>
</blockquote>
<p>Wieso sollte das nicht gehen? Vermutlich würde man das zum Beispiel mit einem etwas angepassten <code>boost.assign</code> hinbekommen. Insbesondere aber mit c++11 sollte das nicht so schwer sein.</p>
</blockquote>
<p>assign wird zur Laufzeit ausgeführt. Du kannst Zeichenkettenliterale tatsächlich nicht zur compilezeit verändern, weder mit Templates, noch mit Makros (versuch es mal, damit du verstehst, warum es nicht geht!). Das was dem am nächsten kommt, wäre wohl eine Krücke nach der Art</p>
<pre><code class="language-cpp">rot13&lt;'H', 'a', 'l', 'l', 'o'&gt;()::value;
</code></pre>
<p>Das ginge, ist aber sicher nicht nach der Vorstellung des Threaderstellers. Hier bietet sich irgendeine Art externes Programm an, welches man noch vor dem Präprozessor auf den Quellcode loslässt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2236137</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2236137</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Fri, 27 Jul 2012 07:42:11 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Fri, 27 Jul 2012 08:01:25 GMT]]></title><description><![CDATA[<p>SeppJ schrieb:</p>
<blockquote>
<p>Hier bietet sich irgendeine Art externes Programm an, welches man noch vor dem Präprozessor auf den Quellcode loslässt.</p>
</blockquote>
<p>Was ich ja auch geschrieben habe. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2236140</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2236140</guid><dc:creator><![CDATA[Tachyon]]></dc:creator><pubDate>Fri, 27 Jul 2012 08:01:25 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Fri, 27 Jul 2012 15:35:35 GMT]]></title><description><![CDATA[<p>Sepp schrieb:</p>
<blockquote>
<p>wäre wohl eine Krücke nach der Art</p>
<pre><code class="language-cpp">rot13&lt;'H', 'a', 'l', 'l', 'o'&gt;()::value;
</code></pre>
<p>Das ginge, ist aber sicher nicht nach der Vorstellung des Threaderstellers.</p>
</blockquote>
<pre><code class="language-cpp">#include &lt;iostream&gt;

template&lt;char c&gt;
char constexpr rot13C()
{
       return (c + 13 &gt; (c &gt;= 'A' &amp;&amp; c &lt;= 'Z' ? 'Z' : 'z'))? c - 13 : c + 13;     //Edit²: Lol! Jetzt gehen aber auch Kleinbuchstaben.
}

template&lt;char...c&gt;
struct rot13
{
        static char constexpr value[] = { rot13C&lt;c&gt;()..., '\0' };
};

template&lt;char...c&gt;
char constexpr rot13&lt;c...&gt;::value[];

int main()
{
        std::cout &lt;&lt; rot13&lt;'B', 'l', 'a'&gt;::value &lt;&lt; '\n';
}
</code></pre>
<p>Das wäre mein Vorschlag, aber der ist IMO nicht besonders hübsch... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2236224</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2236224</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Fri, 27 Jul 2012 15:35:35 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Fri, 27 Jul 2012 14:31:05 GMT]]></title><description><![CDATA[<p>WAs auch noch lustig wäre: User-Defined Literals mit Variadic Templates. Aber da hab ich schon keine Lust mehr drauf.</p>
<p>Edit: Nein, gehen kann das gar nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2236228</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2236228</guid><dc:creator><![CDATA[Sone]]></dc:creator><pubDate>Fri, 27 Jul 2012 14:31:05 GMT</pubDate></item><item><title><![CDATA[Reply to Rot13 Template? on Fri, 27 Jul 2012 14:28:24 GMT]]></title><description><![CDATA[<p>Eine Möglichkeit, das ganze etwas schöner zu machen, sind zusammengesetzt int-Literale aus chars.</p>
<pre><code class="language-cpp">template &lt;int...&gt; struct string { ... };
typedef string&lt;'Hell', 'o Wo', 'rld!'&gt; s;
...
</code></pre>
<p>Ist ein bisschen besser lesbarer.</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/28547">@Sone</a>: Du bist ein Idiot. GTFO.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2236230</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2236230</guid><dc:creator><![CDATA[Kellerautomat]]></dc:creator><pubDate>Fri, 27 Jul 2012 14:28:24 GMT</pubDate></item></channel></rss>