<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=422328&amp;view=findpost&amp;p=3850524</guid>
        <pubDate>Sat, 07 Aug 2021 23:52:23 +0000</pubDate>
        <title>Явное указание членов структуры при build-time-инициализации.</title>
        <link>https://forum.sources.ru/index.php?showtopic=422328&amp;view=findpost&amp;p=3850524</link>
        <description><![CDATA[ЫукпШ: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=422328&view=findpost&p=3850512'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>jcxz &#064; <time class="tag-quote__quoted-time" datetime="2021-08-07T12:26:29+03:00">07.08.21, 09:26</time></span><div class='quote '><div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=422328&view=findpost&p=3850510'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>jcxz &#064; <time class="tag-quote__quoted-time" datetime="2021-08-07T09:19:10+00:00">07.08.21, 09:19</time></span><div class='quote '>В стандарте плюсов такой формы синтаксиса нет (пример из версии 2003 года):</div></div><br>
Ещё раз жаль. :(   Так как например IAR (for ARM) прекрасно переваривает такие инициализации.</div></div><br>
Значит, тебе крупно не повезло, особенно с наследством.<br>
А у меня IAR для AVR не переваривает такие инициализации.<br>
Зато инициализации вида<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&nbsp;&nbsp; &nbsp;struct {</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;int member0;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;int member1;</div><div class="code_line">&nbsp;&nbsp; &nbsp;} static const t1 = {1,2};</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script><br>
спокойно перевариваются без любых дополнительных настроек.<br>
-----<br>
Что, интересно, твориться в голове у человека, который в простейшей ситуации<br>
вместо проверенного варианта использует что-то да ещё с дополнительными &quot;птичками&quot; в настройках ? =:0<br>
Полная разруха твориться, теперь придётся весь проект вообще переделывать, и не только<br>
по этой причине.<br>
Не повезло.]]></description>
        <author>ЫукпШ</author>
        <category>Visual C++ / MFC / WTL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=422328&amp;view=findpost&amp;p=3850512</guid>
        <pubDate>Sat, 07 Aug 2021 09:26:29 +0000</pubDate>
        <title>Явное указание членов структуры при build-time-инициализации.</title>
        <link>https://forum.sources.ru/index.php?showtopic=422328&amp;view=findpost&amp;p=3850512</link>
        <description><![CDATA[jcxz: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=422328&view=findpost&p=3850510'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>jcxz &#064; <time class="tag-quote__quoted-time" datetime="2021-08-07T09:19:10+00:00">07.08.21, 09:19</time></span><div class='quote '>В стандарте плюсов такой формы синтаксиса нет (пример из версии 2003 года):</div></div><br>
Ещё раз жаль. :(   Так как например IAR (for ARM) прекрасно переваривает такие инициализации. Со следующими установками свойств проекта:]]></description>
        <author>jcxz</author>
        <category>Visual C++ / MFC / WTL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=422328&amp;view=findpost&amp;p=3850510</guid>
        <pubDate>Sat, 07 Aug 2021 09:19:10 +0000</pubDate>
        <title>Явное указание членов структуры при build-time-инициализации.</title>
        <link>https://forum.sources.ru/index.php?showtopic=422328&amp;view=findpost&amp;p=3850510</link>
        <description><![CDATA[jcxz: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=422328&view=findpost&p=3850504'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>Dushevny &#064; <time class="tag-quote__quoted-time" datetime="2021-08-07T07:02:57+00:00">07.08.21, 07:02</time></span><div class='quote '>А так нельзя ?</div></div>Я знаю как это написать. Вопрос был не в этом. Вопрос был конкретный.<br>
Проблема не в <strong class='tag-b'>написании своего кода</strong>, а в <strong class='tag-b'>компиляции большого объёма чужого</strong>, где полно таких инициализаций, причём вложенных на много уровней struct/union. Который нет никакого желания весь перепахивать из-за этого.]]></description>
        <author>jcxz</author>
        <category>Visual C++ / MFC / WTL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=422328&amp;view=findpost&amp;p=3850504</guid>
        <pubDate>Sat, 07 Aug 2021 07:02:57 +0000</pubDate>
        <title>Явное указание членов структуры при build-time-инициализации.</title>
        <link>https://forum.sources.ru/index.php?showtopic=422328&amp;view=findpost&amp;p=3850504</link>
        <description><![CDATA[Dushevny: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=422328&view=findpost&p=3850475'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>jcxz &#064; <time class="tag-quote__quoted-time" datetime="2021-08-06T17:00:33+00:00">06.08.21, 17:00</time></span><div class='quote '>PS: Не знаю как правильно называется такая инициализация, чтобы загуглить это дело...</div></div>В стандарте Сей ISO/IEC 9899:1999 она описана в разделе 6.7.8 Initialization. Выглядит это так:<br>
<div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '><br>
Syntax<br>
    initializer:<br>
        assignment-expression<br>
        { initializer-list }<br>
        { initializer-list , }<br>
    initializer-list:<br>
        designation opt initializer<br>
        initializer-list , designation opt initializer<br>
    designation:<br>
        designator-list =<br>
    designator-list:<br>
        designator<br>
        designator-list designator<br>
    designator:<br>
        [ constant-expression ]<br>
        . identifier<br>
....<br>
7 If a designator has the form<br>
. identifier<br>
then the current object (defined below) shall have structure or union type and the<br>
identifier shall be the name of a member of that type.</div></div>Как видно, никакого специального имени она не имеет.<br>
 В стандарте плюсов такой формы синтаксиса нет (пример из версии 2003 года):<br>
<div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <div class='quote '>8.5 Initializers<br>
    initializer:<br>
        = initializer-clause<br>
        ( expression-list )<br>
    initializer-clause:<br>
        assignment-expression<br>
        { initializer-list , opt }<br>
        { }<br>
    initializer-list:<br>
        initializer-clause<br>
        initializer-list , initializer-clause</div></div>]]></description>
        <author>Dushevny</author>
        <category>Visual C++ / MFC / WTL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=422328&amp;view=findpost&amp;p=3850483</guid>
        <pubDate>Fri, 06 Aug 2021 21:50:23 +0000</pubDate>
        <title>Явное указание членов структуры при build-time-инициализации.</title>
        <link>https://forum.sources.ru/index.php?showtopic=422328&amp;view=findpost&amp;p=3850483</link>
        <description><![CDATA[ЫукпШ: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=422328&view=findpost&p=3850477'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>jcxz &#064; <time class="tag-quote__quoted-time" datetime="2021-08-06T17:21:47+00:00">06.08.21, 17:21</time></span><div class='quote '>PS: Всё-таки жаль, что VC не умеет такое для .cpp-файлов.</div></div><br>
А так нельзя ?<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&nbsp;&nbsp; &nbsp;struct {</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;int member0;</div><div class="code_line">&nbsp;&nbsp; &nbsp; &nbsp;int member1;</div><div class="code_line">&nbsp;&nbsp; &nbsp;} static const t = {2,3};</div></ol></div></div></div></div><br>
<br>
Или так:<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">struct XXMM</div><div class="code_line">{</div><div class="code_line">&nbsp;int member0;</div><div class="code_line">&nbsp;int member1;</div><div class="code_line">&nbsp;XXMM(): member0 (1), member1 (2){}</div><div class="code_line">};</div><div class="code_line">&nbsp;</div><div class="code_line">static const XXMM xxmm1,xxmm2;</div></ol></div></div></div></div>]]></description>
        <author>ЫукпШ</author>
        <category>Visual C++ / MFC / WTL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=422328&amp;view=findpost&amp;p=3850477</guid>
        <pubDate>Fri, 06 Aug 2021 17:21:47 +0000</pubDate>
        <title>Явное указание членов структуры при build-time-инициализации.</title>
        <link>https://forum.sources.ru/index.php?showtopic=422328&amp;view=findpost&amp;p=3850477</link>
        <description><![CDATA[jcxz: В смысле нет? У меня другой компилятор (тоже c++) молча её компилит и не морщится. <br>
<br>
<span class="tag-color tag-color-named" data-value="mergepost" style="color: mergepost"><span class='tag-size' data-value='7' style='font-size:7pt;'>Добавлено <time class="tag-mergetime" datetime="2021-08-06T17:58:03+00:00">06.08.21, 17:58</time></span></span><br>
Впрочем: вынес эту инициализацию в отдельный файл (.c) и скомпилилось.<br>
Спасибо <strong class='tag-b'>Dushevny</strong> за наводку&#33;<br>
<br>
PS: Всё-таки жаль, что VC не умеет такое для .cpp-файлов.]]></description>
        <author>jcxz</author>
        <category>Visual C++ / MFC / WTL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=422328&amp;view=findpost&amp;p=3850476</guid>
        <pubDate>Fri, 06 Aug 2021 17:08:06 +0000</pubDate>
        <title>Явное указание членов структуры при build-time-инициализации.</title>
        <link>https://forum.sources.ru/index.php?showtopic=422328&amp;view=findpost&amp;p=3850476</link>
        <description><![CDATA[Dushevny: Это чисто Сишная конструкция. В плюсах ее нет.]]></description>
        <author>Dushevny</author>
        <category>Visual C++ / MFC / WTL</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=422328&amp;view=findpost&amp;p=3850475</guid>
        <pubDate>Fri, 06 Aug 2021 17:00:33 +0000</pubDate>
        <title>Явное указание членов структуры при build-time-инициализации.</title>
        <link>https://forum.sources.ru/index.php?showtopic=422328&amp;view=findpost&amp;p=3850475</link>
        <description><![CDATA[jcxz: Дано: <br>
VS 2017<br>
код:<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">struct {</div><div class="code_line">&nbsp;&nbsp;int member0;</div><div class="code_line">&nbsp;&nbsp;int member1;</div><div class="code_line">} static const t = {</div><div class="code_line">&nbsp;&nbsp;.member0 = 1,</div><div class="code_line">&nbsp;&nbsp;.member1 = 2</div><div class="code_line">};</div></ol></div></div></div></div><br>
VS почему-то не понимает такую инициализацию и ругается &quot;синтаксической ошибкой&quot; на точки.  :(<br>
Хотя вроде не особо допотопный компилятор.<br>
В свойствах проекта перепробовал разные значения для поля &quot;Язык&#092;Стандарт языка C++&quot; - ничего не помогло.<br>
Другие имеющиеся компиляторы нормально такое переваривают. Даже старые.<br>
Может его нужно ещё в какое-то место пнуть, чтоб он прожевал это?<br>
<br>
PS: Не знаю как правильно называется такая инициализация, чтобы загуглить это дело...]]></description>
        <author>jcxz</author>
        <category>Visual C++ / MFC / WTL</category>
      </item>
	
      </channel>
      </rss>
	