<?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[error: two consecutive &#x27;[&#x27; shall only introduce an attribute before &#x27;[&#x27; token]]></title><description><![CDATA[<pre><code>error: two consecutive '[' shall only introduce an attribute before '[' token
(+qi::alpha)[ [&amp;ton](const vector&lt;char&gt;&amp; tonvector){ton = string(tonvector.begin(), tonvector.end());}] &gt;&gt;
            ^
</code></pre>
<p>kommt bei</p>
<pre><code>Stimme StringZuStimme(const string&amp; str)
{
    vector&lt;string&gt; Noten;
    boost::split(Noten, str, boost::is_any_of(&quot; &quot;));
    Stimme result;
    Dauer letzteDauer = Ganze;
    for (const string&amp; str: Noten)
    {
        Tonhoehe ton(0);
        qi::parse(str.begin(), str.end(),
            (+qi::alpha)[ [&amp;ton](const vector&lt;char&gt;&amp; tonvector){ton = string(tonvector.begin(), tonvector.end());}] &gt;&gt;
            (*(qi::char_(',') | qi::char_('\'')))&lsqb;&lsqb;&amp;ton](const vector&lt;char&gt;&amp; Oktvec)
                {
                    for (char okt: Oktvec)
                        if (okt == ',') ton -= reineOktav;
                        else if (okt == '\'') ton += reineOktav;
                }] &gt;&gt;
            qi::uint_&lsqb;&lsqb;&amp;letzteDauer](unsigned int dauer){letzteDauer.SetDauer2(dauer);}]);
        result.push_back(Note(ton, letzteDauer));
    }
    return result;
}
</code></pre>
<p>Wo liegt der Fehler? (g++ 4.8.1, mit g++ 4.7.1 läuft es; boost 1.54)</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/319154/error-two-consecutive-shall-only-introduce-an-attribute-before-token</link><generator>RSS for Node</generator><lastBuildDate>Sun, 26 Jul 2026 07:33:36 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/319154.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 08 Aug 2013 15:14:25 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to error: two consecutive &#x27;[&#x27; shall only introduce an attribute before &#x27;[&#x27; token on Thu, 08 Aug 2013 15:14:25 GMT]]></title><description><![CDATA[<pre><code>error: two consecutive '[' shall only introduce an attribute before '[' token
(+qi::alpha)[ [&amp;ton](const vector&lt;char&gt;&amp; tonvector){ton = string(tonvector.begin(), tonvector.end());}] &gt;&gt;
            ^
</code></pre>
<p>kommt bei</p>
<pre><code>Stimme StringZuStimme(const string&amp; str)
{
    vector&lt;string&gt; Noten;
    boost::split(Noten, str, boost::is_any_of(&quot; &quot;));
    Stimme result;
    Dauer letzteDauer = Ganze;
    for (const string&amp; str: Noten)
    {
        Tonhoehe ton(0);
        qi::parse(str.begin(), str.end(),
            (+qi::alpha)[ [&amp;ton](const vector&lt;char&gt;&amp; tonvector){ton = string(tonvector.begin(), tonvector.end());}] &gt;&gt;
            (*(qi::char_(',') | qi::char_('\'')))&lsqb;&lsqb;&amp;ton](const vector&lt;char&gt;&amp; Oktvec)
                {
                    for (char okt: Oktvec)
                        if (okt == ',') ton -= reineOktav;
                        else if (okt == '\'') ton += reineOktav;
                }] &gt;&gt;
            qi::uint_&lsqb;&lsqb;&amp;letzteDauer](unsigned int dauer){letzteDauer.SetDauer2(dauer);}]);
        result.push_back(Note(ton, letzteDauer));
    }
    return result;
}
</code></pre>
<p>Wo liegt der Fehler? (g++ 4.8.1, mit g++ 4.7.1 läuft es; boost 1.54)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2344484</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2344484</guid><dc:creator><![CDATA[fehler]]></dc:creator><pubDate>Thu, 08 Aug 2013 15:14:25 GMT</pubDate></item><item><title><![CDATA[Reply to error: two consecutive &#x27;[&#x27; shall only introduce an attribute before &#x27;[&#x27; token on Thu, 08 Aug 2013 15:36:10 GMT]]></title><description><![CDATA[<p>fehler schrieb:</p>
<blockquote>
<p>Wo liegt der Fehler?</p>
</blockquote>
<p>an der gezeigten Stelle. Ein zusatzliches Klaamerpaar () sollte Abhilfe schaffen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2344487</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2344487</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Thu, 08 Aug 2013 15:36:10 GMT</pubDate></item><item><title><![CDATA[Reply to error: two consecutive &#x27;[&#x27; shall only introduce an attribute before &#x27;[&#x27; token on Thu, 08 Aug 2013 15:40:56 GMT]]></title><description><![CDATA[<p>camper schrieb:</p>
<blockquote>
<p>fehler schrieb:</p>
<blockquote>
<p>Wo liegt der Fehler?</p>
</blockquote>
<p>an der gezeigten Stelle. Ein zusatzliches Klaamerpaar () sollte Abhilfe schaffen.</p>
</blockquote>
<p>Danke! So geht es:</p>
<pre><code>Stimme StringZuStimme(const string&amp; str)
{
    vector&lt;string&gt; Noten;
    boost::split(Noten, str, boost::is_any_of(&quot; &quot;));
    Stimme result;
    Dauer letzteDauer = Ganze;
	for (const string&amp; str: Noten)
    {
        Tonhoehe ton(0);
        qi::parse(str.begin(), str.end(),
            (+qi::alpha)[ ([&amp;ton](const vector&lt;char&gt;&amp; tonvector){ton = string(tonvector.begin(), tonvector.end());}) ] &gt;&gt;
            (*(qi::char_(',') | qi::char_('\'')))[ ([&amp;ton](const vector&lt;char&gt;&amp; Oktvec)
                {
                    for (char okt: Oktvec)
                        if (okt == ',') ton -= reineOktav;
                        else if (okt == '\'') ton += reineOktav;
                }) ] &gt;&gt;
            qi::uint_[ ([&amp;letzteDauer](unsigned int dauer){letzteDauer.SetDauer2(dauer);}) ]);
        result.push_back(Note(ton, letzteDauer));
    }
    return result;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2344489</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2344489</guid><dc:creator><![CDATA[fehler]]></dc:creator><pubDate>Thu, 08 Aug 2013 15:40:56 GMT</pubDate></item></channel></rss>