首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >QList带来的麻烦

QList带来的麻烦
EN

Stack Overflow用户
提问于 2014-03-12 00:10:50
回答 1查看 285关注 0票数 1

如果我在函数中设置了QList,它就能正常工作

代码语言:javascript
运行
AI代码解释
复制
void MainWindow::ReadXML() {
    ...
    QList<QString> list;
    list << "alfa" << "beta" << "gamma" << "delta" << "epsilon";
    ...
}

但是,如果试图在代码块之外编写相同的代码段( QList必须对整个文件可见),Qt Creator会在最后一行用红色下划线,并告诉我这个错误:"expeted to declaration“

有什么建议吗?

EN

回答 1

Stack Overflow用户

发布于 2014-03-12 00:28:05

您可能有几种方法来解决此问题,但下面是其中一种:

代码语言:javascript
运行
AI代码解释
复制
static QStringList myStringList = QStringList << "foo" << "bar" << "baz";

void MainWindow::ReadXML() 
{
    ...
    useMyStringList(myStringList);
     ...
}

但是像这样使用静态变量是不好的做法,所以我可能会更多地使用C++,至少,我会创建如下函数:

代码语言:javascript
运行
AI代码解释
复制
static QStringList myStringList()
{
    static QStringList stringList = QStringList() << "foo" << "bar" << "baz";
    return stringList;
}


void MainWindow::ReadXML() 
{
    ...
    useMyStringList(myStringList());
     ...
}

1)请注意,您可以使用QStringList而不是QList。它将为您提供方便的方法,通常情况下,它感觉更自然。

2)用C++11和on,你可以使用初始化器列表,所以不用写:

代码语言:javascript
运行
AI代码解释
复制
QStringList myStringList = QStringList << "foo" << "bar" << "baz";

你可以这样做:

代码语言:javascript
运行
AI代码解释
复制
QStringList myStringList{"foo", "bar", "baz"};
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22339388

复制
相关文章
springboot启动时执行
可以实现CommandLineRunner接口然后重写run方法,在run方法里执行
阿超
2022/08/16
4160
如何让程序启动时以管理员身份运行
1. 添加应用程序清单文件(Application Manifest File)
宿春磊Charles
2021/11/05
2.1K0
Linux 启动时如何自动执行命令或脚本?
我们假定使用的是 Bash 作为登录及注销的主 Shell。如果你使用的是其他 Shell,那么有些方法可能会无效。如果有其他的疑问,请参考对应的 Shell 文档。
用户4988085
2021/07/20
3.8K0
【Linux】Linux权限,shell命令以及运行原理
之前我们一直敲得命令和口口声声说的shell到底是什么呢?命令行提示符和输入的指令并且可以执行都是通过命令行解释器来实现的,那么命令行解释器就是我们常说的shell,具体我们看下面!
The sky
2023/10/17
2720
【Linux】Linux权限,shell命令以及运行原理
eclipse启动时和开发时优化
1 eclipse.ini参数优化 -startup plugins/org.eclipse.equinox.launcher_1.3.201.v20161025-1711.jar --launcher.library plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.401.v20161122-1740 #加载jvm -vm C:\Program Files\Java\jre1.8.0_121\bin #注意这是jre的bin
闵开慧
2018/04/02
9970
eclipse启动时和开发时优化
一起处理启动时接收命令行参数
我们有时在使用一些工具时,往往可以输入 -h 查看需要传入哪些参数,以此来使用这工具,比如 curl 这工具。
小锟哥哥
2022/05/10
4060
一起处理启动时接收命令行参数
.NET 实现启动时重定向程序运行路径及 Windows 服务运行模式部署
日常工作中有时候会遇到需要将程序直接在服务器上运行,而不依赖于 IIS 托管的情况,直接运行有两种方式,一种是部署为 服务模式,另一种则是 直接启动 .NET 发布之后的 exe 文件以 控制台模式运行,控制台模式运行主要问题是服务器在重新启动之后不会自动启动,当然也可以选择配置 Windows 计划任务的形式让 控制台在服务器开机时自动启动, 今天给大家分享 .NET 控制台程序和 .NET 开发的 WebAPI 及 Web 项目在以 Windows 服务模式部署时的一些注意事项。
乌拉栋
2022/10/28
6110
.NET 实现启动时重定向程序运行路径及 Windows 服务运行模式部署
Linux passwd: 拒绝权限(Permission denied)
原因1:/usr/bin/passwd 权限异常 正常情况下的权限:     ls -l /usr/bin/passwd     -rwsr-xr-x 1 root root 34392 2009-05-22 16:03 /usr/bin/passwd 修复命令:     chown root:root /usr/bin/passwd     chmod u=rwx,go=rx,u+s /usr/bin/passwd 原因2:SELinux 未关闭 2.1.查看SELinux状态 方法1
用户2836074
2018/08/15
6.1K0
Hive启动时 show databases; 报错
FAILED: SemanticException org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
刘浩的BigDataPath
2021/04/13
1.2K0
Hive启动时 show databases;  报错
React Native如何消除启动时白屏
在RN 项目启动之后有一个短暂的白屏,调试阶段白屏的时间较长,大概3-5秒,打正式包后这个白屏时间会大大缩短,大多时候都是一闪而过,所以称之为“闪白”。 其实解决的方案也有很多,这里做一个简单的
xiangzhihong
2018/02/06
2K0
React Native如何消除启动时白屏
React Native如何消除启动时白屏
在RN 项目启动之后有一个短暂的白屏,调试阶段白屏的时间较长,大概3-5秒,打正式包后这个白屏时间会大大缩短,大多时候都是一闪而过,所以称之为“闪白”。 其实解决的方案也有很多,这里做一个简单的总结
xiangzhihong
2018/01/26
1.3K0
springBoot启动时让方法自动执行
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
chenchenchen
2019/09/02
3.2K0
SpringBoot启动时执行任务
在 SpringBoot 项目中,main 方法调用了 SpringApplication.run 方法,在 SpringApplication.run 方法执行之前还可以执行一些启动任务。具体的方式是实现 ApplicationRunner 或者 CommandLineRunner 这两个接口。
码农UP2U
2021/04/09
1.1K0
SpringBoot启动时执行任务
启动时获取端口号
我们可以如下写法在boot项目启动时获取端口号 package com.ruben.simplescaffold; import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.Configur
阿超
2022/08/21
5170
SpringApplication 启动时如何选择 ConfigurableApplicationContext
本文主要说明在调用 SpringApplication.run(…​) 时,如何实例化 ConfigurableApplicationContext,也即是如何选择 ConfigurableApplicationContext 的子类。
安宁
2020/07/14
3.5K0
SpringBoot框架 项目启动时执行
郭顺发
2023/07/07
2350
SpringBoot启动时执行指定任务
@EventListener({ApplicationReadyEvent.class})
乐心湖
2020/07/31
6990
SpringBoot 启动时初始化数据
在使用 springboot 搭建项目的时候,有时候会碰到在项目启动时初始化一些操作的需求,针对这种需求 springboot(spring) 提供了以下几种方案:
BUG弄潮儿
2021/10/08
2K0
Jenkins agent启动时无法成功连接
agent启动报错:provided port: 8182 is not reachable! 网络不可达,解决方法是让Jenkins agent节点能够与Jenkins master节点机器的8182端口通信。(可以使用telnet等工具测试,如果是docker检查端接口是否映射?映射的是否端口号一致等等....)
DevOps云学堂
2021/05/11
2.1K0
Jenkins agent启动时无法成功连接
elasticsearch 启动时指定jdk版本 转
背景 我电脑环境的jdk是1.7,而需要的版本为1.8. 因此需要给elasticsearch指定jdk1.8(不需要将jdk1.8配置到环境变量).
双面人
2019/08/31
3.4K0

相似问题

运行Artisan命令时拒绝目录权限

10

运行Kafka命令时权限被拒绝

10

使用chroot运行命令时,权限被拒绝

10

运行maven命令jenkins时权限被拒绝

421

运行cd命令时jenkins权限被拒绝

11
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文