草庐IT

qt-embedded-linux

全部标签

c++ - 在 Linux 上编译 boost asio 时出现链接错误

我一直在浏览一些boost教程和它的库。我完成了boost的基础教程:http://www.boost.org/doc/libs/1_52_0/more/getting_started/unix-variants.html而且效果很好。我在使用asio教程时遇到问题:http://www.boost.org/doc/libs/1_50_0/doc/html/boost_asio/tutorial/tutdaytime1/src.html看起来像是链接错误,但我包含了与之前相同的路径:g++-I/usr/local/boost_1_52_0test.cpp-oexample错误:/tmp

c++ - Qt的QBuffer线程安全吗?

我正在使用QBuffer在ReadWrite模式下。一个workerQThread将数据推送到缓冲区中,另一个QThread从中读取数据。QBuffer是否保证线程安全,或者我是否需要从QBuffer派生并添加互斥量? 最佳答案 引用MarkSummerfield的书C++GUIProgrammingwithQt4:Qt'sthread-safeclassesincludeQMutex,QMutexLocker,QReadWriteLock,QReadLocker,QWriteLocker,QSemaphore,QThreadSto

c++ - Qt raw 与 std::shared_ptr

我注意到当在QT中用shared_ptr替换原始指针时,我的代码不再起作用。例如,如果不是QTreeWidgetItem*vItem(newQTreeWidgetItem(ItemTitle));我用std::shared_ptrvItem(newQTreeWidgetItem(ItemTitle));然后,要么程序崩溃,要么什么都没做(即使我使用.get()函数来获取来self代码后面共享的原始指针)。有谁知道可能是什么原因? 最佳答案 对Qt模型项使用共享指针会导致所有权冲突:QTreeWidget获取您传递给它的任何QTree

c++ - 使用 QGLShaderProgram 将自定义类型(结构)统一从 Qt 传递到 GLSL

我为包含两个vector的光参数定义了一个结构。该结构在C++和GLSL中以类似的方式定义(注意:QVector3D封装了3个float,而不是double):C++宿主程序:structLightParameters{QVector3Dpos;QVector3Dintensity;};片段着色器:structLightParameters{vec3pos;vec3intensity;};在片段着色器中,我还定义了以下制服。灯的数量限制为8个,因此统一数组具有恒定大小(但实际只使用了numLights):constintmaxLights=8;uniformintnumLights;u

c++ - 如何在从 Linux 移植的 C++ 项目中使用 Open GL

我刚刚尝试在我的Mac上编译一个开源C++应用程序。我收到错误GL/gl.h文件未找到。我知道这意味着它找不到需要编译和运行的开放式GL库。我对下一步该做什么感到困惑,因为似乎OSX包含对opengl的内置支持。有nothing去下载。对于OSX和Linux上的OpenGL,头文件名称似乎可能不同(OpenGLheadersforOSX&Linux)所以我对下一步该做什么感到困惑。我是否下载OpenGL并将其链接到我的项目?我是否将xcode配置为使用native版本的OpenGL?我要更改标题吗?有人可以提供更多指导吗?这个答案给出了windows/linux的答案——但不是OSX:

c++ - Qt:在 TreeView 中设置列

我如何为qTreeView实现qTreeWidget的代码?for(constauto&i:names){QTreeWidgetItem*item=newQTreeWidgetItem(ui->treeWidget);item->setText(0,QString::fromStdString(i));ui->treeWidget->addTopLevelItem(item);conststd::unordered_mapmap=m_reader.getMapFromEntry(i);for(constauto&j:map){QTreeWidgetItem*item2=newQTree

c++ - Qt XML 中的属性顺序不正确

我有以下代码:element.clear();element.setTagName("accountpoint");element.setAttribute("code",QString(ID_CONST)+serial);element.setAttribute("name",QString());element.setAttribute("serial",serial);QFilefile(filename);file.open(QIODevice::ReadWrite);QTextStreamstream(&file);doc.save(stream,4);我想我会得到像这样的X

一文搞懂在Linux下使用Docker快速部署Kafka服务

文章目录1.安装zookeeper2.安装Kafka3.可视化工具kafka-map4.故障排查5.总结1.安装zookeeper由于Kafka依赖Zookeeper实现高可用性和一致性,Zookeeper为Kafka提供了关键的分布式协调服务,因此部署Kafka必须先部署Zookeeper集群作为基础,以下是部署Zookeeper的过程在命令行搜索zookeeper镜像dockersearchzookeeper输入以下命令,docker会自动拉取对应镜像:dockerrun-d\--namezookeeper\-p2181:2181\-v/etc/localtime:/etc/localti

c++ - 如何将额外变量传递给 Qt 插槽

我想知道如何将一个单独的变量传递到一个插槽中。我似乎无法让它工作。有什么办法解决这个问题吗?这是我的代码:QTimer*timer=newQTimer();connect(timer,SIGNAL(timeout()),this,SLOT(method(MYVARIABLE)));timer->start(4000); 最佳答案 如果您不想在您的类中声明MYVARIABLE,而是将其绑定(bind)到这个特定的信号/槽连接,您可以将信号连接到C++11lambda,使用Qt5'snewsingal/slotsyntax然后用那个la

c++ - Qt中如何获取QWidget的QTabWidget标题文本?

我知道我可以使用QTabWidget的小部件功能来从指定的选项卡中获取QPlanTextEdit。但是如何获取当前标签小部件的标签标题文本呢?QPlainTextEdit*pTextEdit=NULL;QWidget*pWidget=ui->tabWidget->widget(1);if(pWidget->metaObject()->className()=="QPlainTextEdit")pTextEdit=(QPlainTextEdit*)pWidget;else{QListallTextEdits=pWidget->findChildren();if(allTextEdits.