当前位置: 首页>>代码示例>>C++>>正文


C++ params_t::find方法代码示例

本文整理汇总了C++中params_t::find方法的典型用法代码示例。如果您正苦于以下问题:C++ params_t::find方法的具体用法?C++ params_t::find怎么用?C++ params_t::find使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在params_t的用法示例。


在下文中一共展示了params_t::find方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: fault

    void
    execute(xmlrpc_c::paramList const& paramList,
            xmlrpc_c::value *   const  retvalP) {
#ifdef WITH_DLIB
        const params_t params = paramList.getStruct(0);
        params_t::const_iterator si = params.find("model_name");
        if (si == params.end()) {
            throw xmlrpc_c::fault(
                "Missing name of model to be optimized (e.g. PhraseDictionaryMultiModelCounts0)",
                xmlrpc_c::fault::CODE_PARSE);
        }
        const string model_name = xmlrpc_c::value_string(si->second);
        PhraseDictionaryMultiModel* pdmm = (PhraseDictionaryMultiModel*) FindPhraseDictionary(model_name);

        si = params.find("phrase_pairs");
        if (si == params.end()) {
            throw xmlrpc_c::fault(
                "Missing list of phrase pairs",
                xmlrpc_c::fault::CODE_PARSE);
        }

        vector<pair<string, string> > phrase_pairs;

        xmlrpc_c::value_array phrase_pairs_array = xmlrpc_c::value_array(si->second);
        vector<xmlrpc_c::value> phrasePairValueVector(phrase_pairs_array.vectorValueValue());
        for (size_t i=0; i < phrasePairValueVector.size(); i++) {
            xmlrpc_c::value_array phrasePairArray = xmlrpc_c::value_array(phrasePairValueVector[i]);
            vector<xmlrpc_c::value> phrasePair(phrasePairArray.vectorValueValue());
            string L1 = xmlrpc_c::value_string(phrasePair[0]);
            string L2 = xmlrpc_c::value_string(phrasePair[1]);
            phrase_pairs.push_back(make_pair(L1,L2));
        }

        vector<float> weight_vector;
        weight_vector = pdmm->MinimizePerplexity(phrase_pairs);

        vector<xmlrpc_c::value> weight_vector_ret;
        for (size_t i=0; i < weight_vector.size(); i++) {
            weight_vector_ret.push_back(xmlrpc_c::value_double(weight_vector[i]));
        }
        *retvalP = xmlrpc_c::value_array(weight_vector_ret);
#else
        string errmsg = "Error: Perplexity minimization requires dlib (compilation option --with-dlib)";
        cerr << errmsg << endl;
        *retvalP = xmlrpc_c::value_string(errmsg);
#endif
    }
开发者ID:junfeiguo,项目名称:mosesdecoder,代码行数:47,代码来源:mosesserver.cpp

示例2: breakOutParams

 void breakOutParams(const params_t& params) {
     params_t::const_iterator si = params.find("source");
     if(si == params.end())
         throw xmlrpc_c::fault("Missing source sentence", xmlrpc_c::fault::CODE_PARSE);
     source_ = xmlrpc_c::value_string(si->second);
     cerr << "source = " << source_ << endl;
     si = params.find("target");
     if(si == params.end())
         throw xmlrpc_c::fault("Missing target sentence", xmlrpc_c::fault::CODE_PARSE);
     target_ = xmlrpc_c::value_string(si->second);
     cerr << "target = " << target_ << endl;
     si = params.find("alignment");
     if(si == params.end())
         throw xmlrpc_c::fault("Missing alignment", xmlrpc_c::fault::CODE_PARSE);
     alignment_ = xmlrpc_c::value_string(si->second);
     cerr << "alignment = " << alignment_ << endl;
     si = params.find("bounded");
     bounded_ = (si != params.end());
     si = params.find("updateORLM");
     add2ORLM_ = (si != params.end());
 }
开发者ID:junfeiguo,项目名称:mosesdecoder,代码行数:21,代码来源:mosesserver.cpp


注:本文中的params_t::find方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。