首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在qsqlquery.exec中读取此qtstring

如何在qsqlquery.exec中读取此qtstring
EN

Stack Overflow用户
提问于 2011-11-19 08:59:39
回答 1查看 196关注 0票数 0

我正在学习qtsql,但在qtsql::query.exec()中遇到了这个qtstring。

我以前从未在C++中看到过这个字符串。

有人能解释一下为什么会有很多引文吗?怎么看这个?这是一串还是五弦?如果有五个字符串,为什么中间没有像逗号这样的分隔符?此外,query.exec还期待着康斯特& QTstring的到来。因此,如果这是一个字符串,是否与"create (id整型主键,姓氏varchar(20),姓氏varchar(30),年龄整数)“相同?

代码语言:javascript
复制
ret = query.exec("create table person "
              "(id integer primary key, "
              "firstname varchar(20), "
              "lastname varchar(30), "
              "age integer)");

提前谢谢。

它不编译,因为我得到了这个错误

100%构建CXX对象CMakeFiles/utest_main.dir/utest_main.cpp.o函数中的/Users/chen/GitRepo/TickDatabase/utest_main.cpp:‘int():/Users/chen/GitRepo/TickDatabase/utest_main.cpp:25:错误:’firstname‘在此作用域中未声明-- /Users/chen/GitRepo/TickDatabase/utest_main.cpp:25:错误:’lastname‘在此作用域中未声明错误:‘age’在此作用域中没有声明: make2:* CMakeFiles/utest_main.dir/utest_main.cpp.o错误1 make1:* CMakeFiles/utest_main.dir/all Error

但这看起来也不像是一个错误,因为这两个站点都引用了以下语法:

Qt

http://doc.qt.nokia.com/stable/sql-cachedtable.html

有人知道吗?

EN

回答 1

Stack Overflow用户

发布于 2011-11-19 10:41:46

如果两个字符串文本仅用空格分隔,则将它们连接为一个字符串。如果我没有弄错的话,这是C和C++标准的一部分。

编辑C的标准可以找到这里。有关部分是第6.4.5节(适当命名为“字符串文字”),第4段。

在翻译阶段6,将由任意相邻字符序列和宽字符串文字标记指定的多字节字符序列串联成单个多字节字符序列。

在下文第7段中,有一个例子:

示例这对相邻的字符串文本。 “x12”"3“ 生成一个字符串文本,其中包含值为“\x12”和“3”的两个字符,因为转义序列在相邻字符串文字连接之前被转换为执行字符集的单个成员。

C++标准中应该有类似的文本,但是我还没有,所以不能说是哪个部分。

编辑2看问题中的错误,我想说,在真正的来源中有一个缺失的或额外的双引号"

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8192977

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档