zoukankan      html  css  js  c++  java
  • c++

    python中multiprocessing.pool函数介绍_正在拉磨_新浪博客

        multiprocessing.pool

    c++ - Create empty json array with jsoncpp - Stack Overflow

        Create empty json array with jsoncpp
        up vote 1 down vote favorite
        1
           

        I have following code:

        voidMyClass::myMethod(Json::Value& jsonValue_ref){for(int i =0; i <= m_stringList.size(); i++){if(m_boolMarkerList[i]){
                    jsonValue_ref.append(stringList[i]);}}}voidMyClass::myOuterMethod(){Json::Value jsonRoot;Json::Value jsonValue;

            myMethod(jsonValue);

            jsonRoot["somevalue"]= jsonValue;Json::StyledWriter writer;
            std::string out_string = writer.write(jsonRoot);}

        If all boolMarkers are false the out_string is { "somevalue" : null } but I want it to be an empty array: { "somevalue" : [ ] }

        Does anybody know how to achieve this?

        Thank you very much!
        c++ json jsoncpp
        share|edit|flag
           
        asked Nov 8 '12 at 16:17
        Martin Meeser
        190110
            
              
              
        add comment
            
        start a bounty
        3 Answers
        active oldest votes
        up vote 5 down vote accepted
           

        You can do it also this way:

        jsonRootValue["emptyArray"]=Json::Value(Json::arrayValue);

        share|edit|flag
           
        answered Feb 28 '13 at 13:36
        user609441
        6613
            
              
              
        add comment
        up vote 1 down vote
           

        You can do this by defining the Value object as an "Array object" (by default it makes it as an "object" object which is why your member becomes "null" when no assignment made, instead of [] )

        So, switch this line:

        Json::Value jsonValue;
         myMethod(jsonValue);

        with this:

        Json::Value jsonValue(Json::arrayValue);
        myMethod(jsonValue);

        And voila! Note that you can change "arrayValue" to any type you want (object, string, array, int etc.) to make an object of that type. As I said before, the default one is "object".
        share|edit|flag
           
        answered Mar 4 '13 at 9:28
        Ahmet Ipkin
        528
            
             upvote
             flag
           
        Thank you Ahmet but this is exactly the same as user609441 already stated with a little more text. –  Martin Meeser Mar 5 '13 at 11:18
             upvote
             flag
           
        Wanted to explain the reasons as well ^_^ –  Ahmet Ipkin Mar 7 '13 at 7:29
              
        add comment
        up vote 0 down vote
           

        OK I got it. It is a little bit annoying but it is quite easy after all. To create an empty json array with jsoncpp:

        Json::Value jsonArray;
        jsonArray.append(Json::Value::null);
        jsonArray.clear();
        jsonRootValue["emptyArray"]= jsonArray;

        Output via writer will be:

        {"emptyArray"=[]}

  • 相关阅读:
    Jquery中的this指向的是哪个对象?
    需要重新编辑
    关于CSS选择器优先级无冲突样式设置的展示
    在 CSS 中,width 和 height 指的是内容区域的宽度和高度
    关于正则表达式中分组的一些误解勘正以及String的replaceAll方法误解勘正
    关于informatica的Dynamic Lookup组件使用中遇到的一个问题的思考
    【转】Informatica Update 机制详解
    维度表和事实表的含义
    今天看IO流,复制word遇到的一个小问题
    小试下新博客,一个列传行的SQL
  • 原文地址:https://www.cnblogs.com/lexus/p/3531767.html
Copyright © 2011-2022 走看看