小编Eng*_*ain的帖子

是否有任何JSON查看器可以打开大型json文件(窗口)?

我有非常大的JSON文件,有几GB.我正在寻找任何有效的JSON查看器.其中我们还能够以树格式查看JSON.

我明白这样庞大的文件无法一次性加载.我想知道是否有任何软件可以一次查看部分JSON(即打开~10k记录)?

json viewer large-data json-view

36
推荐指数
3
解决办法
4万
查看次数

在QGraphicsView的ScrollHandDrag模式下,如何停止QGraphicsItems在场景中的移动?

QGraphicsItem在场景的不同部分有多个场景.在应用程序中,有一种模式的用户可以滚动场景(手掌拖动模式).为了实现滚动在现场我设定dragModeQGraphicsViewScrollHandDrag.

但问题是当用户试图通过拖动(MousePressMouseMove)任何QGraphicsItem而不是滚动场景来滚动场景时,它会移动QGraphicsItem.

如何停止移动QGraphicsItem和滚动场景,但我还是想选择QGraphicsItems?

任何解决方案或任何指针都会有所帮助.

注意:有非常多的QGraphicsItems和各种类型.所以无法在QGraphicsItems 上安装事件过滤器.

qt qt4 qgraphicsview qgraphicsitem qgraphicsscene

7
推荐指数
1
解决办法
5902
查看次数

使用 CMake 构建一个简单的 Qt UI 应用程序会创建模糊的 UI

我创建了一个简单的 Qt 应用程序,只有一个 MainWindow 和一个按钮。当我在 Qt 中使用Qmake它构建它时,它工作正常,UI 也很好。另一方面,如果使用 CMake 构建它,它可以正常工作,但应用程序 UI 是模糊的。

任何人都可以请让我知道如何解决它。谢谢你。

使用QMake- 生成的应用程序 UI在此处输入图片说明 生成的应用程序 UI CMake 在此处输入图片说明

我的CmakeList.txt档案

make_minimum_required(VERSION 3.0.2)
project(MyProject)

find_package(Qt5Widgets 5.9 PATHS /usr/local/Cellar/qt/5.9.1)
find_package(OpenGL)
#find_package(IOKit PATHS /System/Library/Frameworks/IOKit.framework/Versions/A)

set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_INCLUDE_CURRENT_DIR ON)

add_library(mainwindow mainwindow.cpp)
target_link_libraries (mainwindow Qt5::Widgets)

#set_target_properties(${PROJECT_NAME} PROPERTIES MACOSX_BUNDLE YES)
add_executable(MyProject MACOSX_BUNDLE main.cpp)
target_link_libraries (MyProject mainwindow ${OPENGL_gl_LIBRARY})
Run Code Online (Sandbox Code Playgroud)

项目结构-

在此处输入图片说明

我的机器配置-

在此处输入图片说明

c++ macos qt cmake qtgui

7
推荐指数
1
解决办法
1128
查看次数

唯一ID序列的哈希函数(UUID)

我将消息序列存储在数据库中,每个序列可以包含多达N消息.我想创建一个散列函数,它将表示消息序列,并且如果消息序列存在,则能够更快地检查.

每条消息都有一个区分大小写的字母数字通用唯一ID(UUID).考虑(M1, M2, M3)使用ids 跟踪消息 -

M1 - a3RA0000000e0taBB M2 - a3RA00033000e0taC M3 - a3RA0787600e0taBB

消息序列可以是

Sequence-1 : (M1,M2,M3) Sequence-2 : (M1,M3,M2) Sequence-3 : (M2,M1,M3) Sequence-4 : (M1,M2) Sequence-5 : (M2,M3) ...等等...

以下是用于存储消息序列的数据库结构示例

在此输入图像描述

给定消息序列,我们需要检查数据库中是否存在该消息序列.例如,检查数据库中是否存在消息序列,M1 -> M2 -> M3即UID (a3RA0000000e0taBB -> a3RA00033000e0taC -> a3RA0787600e0taBB).

我想创建一个哈希函数来代替扫描表中的行,而哈希函数用哈希值表示消息序列.使用表中的哈希值查找应该更快.

我的简单哈希函数是 - 在此输入图像描述

我想知道什么是最佳散列函数用于存储消息序列散列更快是存在检查.

algorithm hash hash-function data-structures

7
推荐指数
1
解决办法
1806
查看次数

如何避免在catch块中写入重复的代码?

我正在使用QT 4.8(C++)进行桌面应用程序项目,并编写异常处理,如下所示:

void callerMethod()
{
  try
  {
   method1();
  }
  catch(Exception1& e)
  {
    // display critcal error message
    // abort application
  }
  catch(std::Exception& e)
  {
   // print exception error message
  }
  catch(...)
  {
   // print unknown exception message
  } 
}

void method1()
{
  try
  {
   // some initializations
   // some operations (here exceptions can occur)
   // clean-up code (for successful operation i.e no exception occurred)
  }
  catch(Exception1& e)
  {
   // clean-up code
   throw e;
  }
  catch(Exception2& e)
  {
   // clean-up code …
Run Code Online (Sandbox Code Playgroud)

c++ optimization exception-handling try-catch throw

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

扩展单例类错了吗?

我正在为应用程序创建一个记录器.我正在使用第三方记录器库.在哪个记录器中实现为单例.

我扩展了logger类,因为我想添加一些静态函数.在这些静态函数中,我在内部使用Logger的实例(单个)(我继承了).

我既没有创建MyLogger的实例,也没有重新实现超类的getInstance()方法.但我仍然得到像MyLogger的析构函数一样的警告,因为无法访问父类(Loggger)析构函数.

我想知道,我做错了什么?继承单身是错的还是应该避免?

logging singleton design-patterns extending

5
推荐指数
1
解决办法
3170
查看次数

可以在方法而不是构造函数中初始化类的const成员变量吗?

我有一个类,并希望创建一个const int变量,但该类的构造函数中的变量值不可用.

在类的初始化方法中,我得到了值.我可以用该方法分配吗?因为我只分配一次(如const所说)为什么它不起作用?

代码如下[Just a ProtoType]:

档案:啊

Class A
{
  private :
  const long int iConstValue;

  public :
  A();
  initClassA();
}
Run Code Online (Sandbox Code Playgroud)

档案:A.cpp

A::A()
{
 //CanNot initialize iConstValue (Don't have it)
}

A::initClassA(some params)
{
 // calculation according to params for iConstValue
 iConstValue = (some value)
}
Run Code Online (Sandbox Code Playgroud)

这不起作用.有人有任何解决方案吗?

注意:无法以任何方式获取构造函数中iconstValue的值,因为存在一些限制.所以请不要建议这样做.

c++ design-patterns initialization const class

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

扩展具有私有构造函数和析构函数的单例类会给出编译时警告

我正在使用 C++ (Qt)。

我正在扩展一个单例类,而一个子类只有静态方法。我没有创建子类的任何实例。Singleton 类的构造函数和析构函数都是私有的,所以我无法访问它的构造函数和析构函数。

 class Singleton 
 { 
   private :
           Singleton();
           ~Singleton();
   public :
      // some methods.
 }

 class SubClass : public Singleton
 {
   // There is NO constructor or destructor
   public:
   // Only some STATIC methods.
 }
Run Code Online (Sandbox Code Playgroud)

我使用调用父类的 getInstance()SubClass::getInstance()。我只使用 SubClass 的静态方法(所以不需要实例化 SubClass)。

所以我的问题是,我在编译时收到警告 -

“无法生成子类:析构函数,因为无法访问基类析构函数”。

我想摆脱这些警告,还想知道这个设计是否违反了单例设计模式?


我想实现什么?

我正在为应用程序创建一个记录器。我正在使用第三方库的记录器类(QxtCore 库的 QxtLogger)。这个 QxtLogger 类是一个单例,具有私有的构造函数和析构函数。我想要一个包含 QxtLogger 拥有的所有方法和一些额外的静态方法(特定于我的应用程序)的单例类。

因此,我创建了一个继承 QxtLogger 的类并为其添加了一些静态方法。我担心的是扩展生成警告的单例类(因为基类构造函数和析构函数不可访问)。所以我该怎么做?

c++ inheritance singleton design-patterns extend

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

如何在Sphinx中使用引用链接的数值而不是脚注?

我正在用Sphinx创建一个文档,我在其中引用标准数字引用方式的论文,例如

文件1.rst

骨骼、细胞外基质[2]、体液和扩散化学物质[3]

参考文献.rst

.. [2] 默克斯,RMH,纽曼 <MoreText>

.. [3] 图灵,上午 <MoreText>

但它不起作用。我看到的数字引用仅脚注和你在提到使用字母文本引用文档

我相信很多人都使用编号的参考文献进行引用。有没有办法做到这一点?

bibliography python-sphinx

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