如何初始化gracenote::GnString? 我们已经用C代码和控制台应用程序对GNSDK API进行了实验,现在可以,我们正在用C++代码和Qt 5.1对GNSDK包装进行实验,我们用这个简单的行停止: gracenote::GnString s_MyString=另一个字符串;

如何初始化gracenote::GnString? 我们已经用C代码和控制台应用程序对GNSDK API进行了实验,现在可以,我们正在用C++代码和Qt 5.1对GNSDK包装进行实验,我们用这个简单的行停止: gracenote::GnString s_MyString=另一个字符串;,c++,gracenote,C++,Gracenote,如何更正此行?来自GNSDK的GnString仅用于SDK中的托管字符串。使用它的实例很少,返回的序列化GnUser数据就是其中之一。与GNSDK之间的所有其他字符串都是“C”字符串直接字符串指针。GNSDK将这些类型称为GNSDK_cstr_t 要将序列化字符串传递到RegisterUser,只需给它一个“C”字符串,但要确保它是UTF8编码的 从QString中,您应该能够执行以下操作: gnsdk_cstr_t serializedUser = text.toUtf8().constDat

如何更正此行?

来自GNSDK的GnString仅用于SDK中的托管字符串。使用它的实例很少,返回的序列化GnUser数据就是其中之一。与GNSDK之间的所有其他字符串都是“C”字符串直接字符串指针。GNSDK将这些类型称为GNSDK_cstr_t

要将序列化字符串传递到RegisterUser,只需给它一个“C”字符串,但要确保它是UTF8编码的

从QString中,您应该能够执行以下操作:

gnsdk_cstr_t serializedUser = text.toUtf8().constData();
您可以将此serializedUser传递到RegisterUser


简而言之,您不必创建GnString以在应用程序中使用。它仅适用于GNSDK的某些输出值。

请定义我们已停止…初始化gracenote::GNSDK确定后,我们已生成一个windows文件,其中包含由以前的注册服务器生成的字符串。现在,我们已经用Qt5.1qfile::read重新加载了这个文件,我们正在尝试将QString从QT转换为gracenote::GnString。在这里,我们的应用程序在没有消息的情况下崩溃!!!gracenote::GnString skeyuser=gracenote::GnString0;//确定//下面是致命指令skeyuser=gracenote::GnString buf.data;//崩溃!!!请不要在标题中添加已解决的问题-如果你有答案,请接受它,或者如果你自己已经解决了,并且答案可能对其他人有用,请自己回答,然后接受它。进行相关讨论。