пакетная программа, названная call.cmd;
call.cmd
****** B A T C H R E C U R S I O N exceeds STACK limits ******
Recursion Count=1240, Stack Usage=90 percent
****** B A T C H PROCESSING IS A B O R T E D ******
вызова Я нашел ответ в стандартной документации ( последний черновик ). Надеюсь, я попытаюсь объяснить, что я понял.
Во-первых, если класс определяет конструктор списка инициализации, он используется всякий раз, когда это подходит:
§ 8.5.4 (стр. 203)
Список инициализаторов конструкторы предпочтение перед другими конструкторами в list-initialization (13.3.1.7).
Я думаю, что это отличная возможность, устраняющая головную боль, связанную с неоднородным стилем :)
В любом случае, единственная ошибка (которая мой вопрос о) заключается в том, что если вы создаете класс без конструктора инициализатора, а затем добавляете его позже, вы можете получить удивительный результат.
В принципе, представьте, что std :: vector
не имеет инициализатора list, то следующий конструктор создаст вектор с 10 элементами:
std::vector<int> numbers{10};
Добавив конструктор списка инициализатора, компилятор предпочтет его другому конструктору из-за синтаксиса {}
. Такое поведение происходит из-за того, что элементы списка инициализации {10}
принимаются с помощью конструктора списка инициализации. Если нет приемлемого преобразования,
Установка autoflush = "true"
в файле .config
гарантирует, что источники трассировки сбрасываются на диск после каждой трассировки.
Ниже приведен пример файла конфигурации с autoflush = "true"
:
<configuration>
<system.diagnostics>
<sources>
<source name="System.ServiceModel" switchValue="Warning, ActivityTracing"
propagateActivity="true">
<listeners>
<add name="xml" type="System.Diagnostics.XmlWriterTraceListener"
initializeData="e2eTraceTest.xml" />
</listeners>
</source>
</sources>
<trace autoflush="true" />
</system.diagnostics>
</configuration>
Кроме того, если вы случайно хотите сохранить свою трассировку WCF в базе данных, вы можете проверить этот пост:
Это позволит вам просматривать трассировку WCF в реальном времени, не сбрасывая ее.