小编Swi*_*tch的帖子

在Qt,C++中检查文件夹是否存在(以及创建文件夹)

在Qt中,如何检查当前目录中是否存在给定文件夹?
如果它不存在,我该如何创建一个空文件夹?

c++ filesystems qt

145
推荐指数
3
解决办法
12万
查看次数

如何在亚马逊的S3上获取文件的md5sum

如果我在亚马逊的S3上有现有文件,那么在不下载文件的情况下获取md5sum的最简单方法是什么?

谢谢

amazon-s3

65
推荐指数
6
解决办法
7万
查看次数

在Qt中获取MouseMoveEvents

在我的程序中,我想在鼠标移动时调用mouseMoveEvent(QMouseEvent*event)(即使它在另一个窗口上).

现在,在我的mainwindow.cpp文件中,我有:

void MainWindow::mouseMoveEvent(QMouseEvent* event) {
    qDebug() << QString::number(event->pos().x());
    qDebug() << QString::number(event->pos().y());
}
Run Code Online (Sandbox Code Playgroud)

但是,当我在程序本身的窗口上单击并拖动鼠标时,似乎只会调用它.我试过打电话

setMouseTracking(true);
Run Code Online (Sandbox Code Playgroud)

在MainWindow的构造函数中,但这似乎没有做任何不同的事情(只有当我按住鼠标按钮时,无论它在何处,都会调用mouseMoveEvent).在全球范围内跟踪鼠标位置的最简单方法是什么?

mouse qt mouseevent

31
推荐指数
1
解决办法
6万
查看次数

在Qt/Qmake中构建多个目标

如何在Qt中指定具有不同配置的多个目标?有没有办法在一个.pro文件中执行此操作?

例如,我想构建以下2个.pro文件(无需每次都手动更改.pro文件):

targetA:

QT += network
TEMPLATE = app
SOURCES += main.cpp \
    mainwindow.cpp
HEADERS += mainwindow.h
FORMS += mainwindow.ui
RESOURCES += resource.qrc

TARGET = targetA
DEFINES += PARAMA
Run Code Online (Sandbox Code Playgroud)

targetB:

  QT += network
  TEMPLATE = app
  SOURCES += main.cpp \
      mainwindow.cpp
  HEADERS += mainwindow.h
  FORMS += mainwindow.ui
  RESOURCES += resource.qrc

  TARGET = targetB
  DEFINES += PARAMB
Run Code Online (Sandbox Code Playgroud)

qt qmake

19
推荐指数
2
解决办法
1万
查看次数

在宏中连接字符串 - C++

连接宏中定义的字符串的最简单方法是什么.即我正在寻找的伪代码将是:

#define ROOT_PATH "/home/david/"
#define INPUT_FILE_A ROOT_PATH+"data/inputA.bin"
#define INPUT_FILE_B ROOT_PATH+"data/inputB.bin"
...
#define INPUT_FILE_Z ROOT_PATH+"data/inputZ.bin"
Run Code Online (Sandbox Code Playgroud)

我知道的唯一方法是在代码中使用strcat,或者使用字符串类然后使用c_str方法,但是当我有大量输入文件时它会变得混乱.我想直接使用INPUT_FILE_A等,而不是有很多局部变量.有没有办法做到这一点?

谢谢.

c c++ string concatenation

17
推荐指数
1
解决办法
3万
查看次数

运行从stdin传输的脚本(Linux/Shell脚本)

假设我有一个脚本:my_script.sh

而不是做

./my_script.sh
Run Code Online (Sandbox Code Playgroud)

我想做的事情如下:

cat my_script.sh | <some command here>
Run Code Online (Sandbox Code Playgroud)

这样脚本就会执行.这可能吗?

使用情况是,如果我想执行脚本是wget的或s3cat等的输出现在我把它保存到一个临时文件,将其更改为可执行文件,然后运行它.有没有办法直接做到这一点?

linux shell scripting command-line

12
推荐指数
2
解决办法
2万
查看次数

C++ stl unordered_map实现,引用有效性

对于这两个std::mapstd::tr1::unordered_map,我从标准看:

在所有情况下,对unordered_map容器中元素的引用仍然有效,即使在重新散列之后也是如此.

他们是如何做到的(以实施方式)?他们是否将所有条目都维护为一种链表,然后哈希表只存储指向元素的指针?

c++ stl unordered-map reference map

12
推荐指数
1
解决办法
5821
查看次数

截取特定窗口的截图 - C++/Qt

在Qt中,我如何拍摄特定窗口的屏幕截图(即假设我有记事本,我想截取标题为"无标题 - 记事本"的窗口的屏幕截图)?在他们的截图示例代码中,他们展示了如何截取整个桌面的屏幕截图:

originalPixmap = QPixmap::grabWindow(QApplication::desktop()->winId());
Run Code Online (Sandbox Code Playgroud)

如何在Qt中获取特定窗口的winId()(假设我知道窗口的标题)?

谢谢

c++ qt screenshot

9
推荐指数
1
解决办法
1万
查看次数

打开gzip文件以便在C中读取而不创建临时文件

我有一些gzip文件,我想通过fopen和fscanf在C中读取.反正有没有将文件压缩到临时文件?

谢谢.

c file-io gzip

8
推荐指数
3
解决办法
8997
查看次数

易失性成员函数(C++)

鉴于以下课程:

class MyClass {
  public:
    int value() const {
      return value_;
    }

  private:
    volatile int value_;
};
Run Code Online (Sandbox Code Playgroud)

是否还必须将value()成员函数标记为volatile以避免被优化掉或者写得好吗?谢谢.

c++ multithreading volatile

8
推荐指数
2
解决办法
675
查看次数