xpack icon indicating copy to clipboard operation
xpack copied to clipboard

X_PACK_FLAG_ATTR传进去后似乎没用起作用

Open younif opened this issue 2 years ago • 8 comments

用的是clion自带的mingw11.0

younif avatar Nov 29 '23 07:11 younif

另外结构体内的变量似乎过多的话会报错,编译不通过

younif avatar Nov 29 '23 08:11 younif

X_PACK_FLAG_ATTR不生效的给一下范例 变量过多的问题,一个O最多支持99个变量,如果变量太多,可以放多个O(A、M等类似)

xyz347 avatar Nov 29 '23 08:11 xyz347

#include <iostream>
#include "xpack/xml.h"
using namespace std;
struct User {
    int id;
    string  name;
XPACK(O(id, name));
};
int main(int argc, char *argv[]) {
    User u;
    u.id = 12;
    u.name = "uname";

    std::string xmlData_b = xpack::xml::encode(u,"root", X_PACK_FLAG_ATTR , 4, ' ');

    std::cout << "Encoded XML:\n" << xmlData_b << "\n\n";

    return 0;
}

这个是测试代码 输出的是

Encoded XML:

<root>
    <id>12</id>
    <name>uname</name>
</root>

Process finished with exit code 0

younif avatar Nov 29 '23 08:11 younif

我在打断点的时候,发现在判断X_PACK_FLAG_ATTR时,对应的变量变成了0

younif avatar Nov 29 '23 08:11 younif

X_PACK_FLAG_ATTR不生效的给一下范例 变量过多的问题,一个O最多支持99个变量,如果变量太多,可以放多个O(A、M等类似)

谢谢你!

younif avatar Nov 29 '23 09:11 younif

目前encode传入的flag不生效,需要用X(F(ATTR), id)这种写法

xyz347 avatar Nov 29 '23 09:11 xyz347

支持decode XML中的attribute吗?

ButteredCat avatar May 09 '24 08:05 ButteredCat

支持

xyz347 avatar May 09 '24 08:05 xyz347