سؤال

لدي مشكلة باستخدام التعزيز: program_options

هذا البرنامج البسيط ، الذي تم تصويره من وثائق BOOSTS:

#include <boost/program_options.hpp>

int main( int argc, char** argv )
{

    namespace po = boost::program_options;

    po::options_description desc("Allowed options");
    desc.add_options()
        ("help", "produce help message")
        ("compression", po::value<int>(), "set compression level")
        ;
    return 0;
}

يفشل مع فائض المخزن المؤقت.

لقد قمت بتنشيط "مفتاح الأمان المخزن المؤقت" ، وعندما أقوم بتشغيله ، أحصل على "استثناء غير معروف (0xC0000409)" عندما أخطو على السطر desc.add_options()...

يمكنني استخدام Visual Studio 2005 و Boost 1.43.0.

بالمناسبة ، يتم تشغيله إذا قمت بإلغاء تنشيط المفتاح ولكني لا أشعر بالراحة في القيام بذلك ... ما لم يكن من الممكن إلغاء تنشيطه محليًا.

هل لديك حل لهذه المشكلة؟

تعديللقد وجدت المشكلة التي كنت أربطها مع libboost_program_options-vc80-mt.lib التي لم تكن المكتبة الجيدة.

هل كانت مفيدة؟

المحلول 2

لقد وجدت المشكلة التي كنت أربطها مع libboost_program_options-vc80-mt.lib التي لم تكن المكتبة الجيدة منذ أن قمت بتغيير مكتبة وقت التشغيل إلى DLL multithread.

نصائح أخرى

كان يعمل في عام 2010. كان على وشك المحاولة في عام 2005 ، لكنه أدرك أنه ليس لدي 1.43 تم تجميعها في تلك البيئة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top