小编Vic*_*voy的帖子

IntelliJ IDEA中的Gradle Java调试项目

我以前使用maven 3它很容易运行任何东西IntelliJ IDEA 13,在主类或测试 - 它通过maven设置工作.但现在我正在尝试用IDEA调试我的java项目Gradle 1.11.问题是想法现在创建/ out/*目录并尝试从那里运行我的类而不是使用gradle设置和构建设置 - 我的意思是,使用maven我可以通过这个来调试我的java项目:

  1. 设置调试配置
  2. 在调试下运行它
  3. 2步将调用maven install并将从target/classes/目录运行我的java项目

但是gradle项目的想法不使用gradle结构.

如何使用gradle从IDEA IDE调试我的java项目?

PS我可以运行gradle test在IDEA下调试和它完美的作品,但我需要类似gradle debuggradle run设置断点在IDE,运行我的主类,并通过IDE启动我的Java应用程序.希望很清楚我想做什么.

java debugging intellij-idea gradle maven

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

Python 3向后兼容性(shlex.quote vs pipes.quote)

我的一个项目使用shlex.quotepython 3.3以来可用.但这shlex.quotepipes.quote移动到shlex后弃用的相同.

现在为兼容性我使用此代码:

def cmd_quote(string):
    import sys
    if int(sys.version[2]) < 3:
        import pipes
        return pipes.quote(string)
    else:
        import shlex
        return shlex.quote(string)
Run Code Online (Sandbox Code Playgroud)

有没有更好的做法?

python compatibility shlex

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

QML覆盖项目样式

是否可以仅覆盖样式的一个属性,例如,组合框?

ComboBox {
        id: comboBox

        anchors.fill: parent

        style: ComboBoxStyle {
            label: Component {
               Text {
                    text: "Players -> " + comboBox.currentText
                }
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

在KDE中,这个组合框看起来很难看,因为它不使用kde主题样式并使用默认的一个.

具有覆盖样式且没有样式覆盖的ComboBox: 具有覆盖样式且没有样式覆盖的ComboBox

我需要在这张图片上有一个像最后一个样式的组合框,但是有自定义文本.

qt combobox qml

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

C ++ Qt基类虚拟析构函数

我们是否需要为将在Qt-way中使用的类创建虚拟析构函数:set QObject-parent,它将调用QObject的析构函数deleteLater()或类似的对象来设置其父对象?

例如:

class MyWidget : public QWidget {
public:
    MyWidget() {
        w = new QWidget(this);
        // "w" will be deleted automatically by parent MyWidget::QWidget::QObject's destructor afaik
    }
private:
    QWidget *w;
}
Run Code Online (Sandbox Code Playgroud)

MyWidget如果要继承该类,我们是否需要虚拟析构函数?我认为没有理由,因为它不会删除任何内容,并且派生自该类的每个属性QObject将从MyWidget :: QWidget :: QObject的析构函数中删除。

c++ inheritance qt destructor

5
推荐指数
2
解决办法
2309
查看次数

显式operator = call(T :: operator =)

我正在阅读qt资源,我已经多次看过这样的代码:

buttonOpt.QStyleOption::operator=(*opt);
Run Code Online (Sandbox Code Playgroud)

所以,我想这是类似的,buttonOpt = *opt但为什么他们使用这种语法而不是默认和用户友好?这更快还是存在任何其他利润?

c++ qt assignment-operator

5
推荐指数
2
解决办法
144
查看次数

子目录之间的 CMake 自定义目标名称冲突

我正在编写一个游戏引擎,我有一个名为的目录thirdparty,其中放置了我的引擎使用的所有外部库:

thirdparty/...
          /zlib
          /freetype2
          /SDL2
          /...
Run Code Online (Sandbox Code Playgroud)

因此,引擎目录结构如下所示:

engine/actors
engine/memory_allocator
engine/renderer
engine/...
engine/thirdparty
engine/thirdparty/CMakeLists.txt
engine/CMakeLists.txt
Run Code Online (Sandbox Code Playgroud)

engine/CMakeLists.txt

cmake_minimum_required (VERSION 3.2)

project(Engine)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17 -fvisibility=hidden -fvisibility-inlines-hidden -Wall -Werror")
# Include build directory to be able to include generated files:
set(CMAKE_INCLUDE_CURRENT_DIR ON)
file(GLOB GLAD_SOURCES thirdparty/glad/src/glad.c)
file(GLOB ACTOR_SOURCES actors/*.cpp)
file(GLOB LOGIC_SOURCES logic/*.cpp)
file(GLOB UI_SOURCES ui/*.cpp)
set(SOURCES ${GLAD_SOURCES}
            ${ACTOR_SOURCES}
            ${LOGIC_SOURCES}
            ${UI_SOURCES})
add_library(engine SHARED ${SOURCES})

include_directories(thirdparty/glm/)
include_directories(thirdparty/glad/include)
include_directories(thirdparty/tinyxml2/)
include_directories(thirdparty/zlib/)
include_directories(thirdparty/sdl2/SDL2-2.0.5/)
include_directories(./)
add_subdirectory(../../thirdparty thirdparty)

target_link_libraries(engine SDL2)
target_link_libraries(engine tinyxml2)
target_link_libraries(engine zlib)
Run Code Online (Sandbox Code Playgroud)

engine/thirdparty/CMakeLists.txt: …

c++ cmake

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

是否可以相互依赖声明2个静态可变变量?

我试图声明两个静态可变变量,但我有一个错误:

static mut I: i64 = 5;
static mut J: i64 = I + 3;

fn main() {
    unsafe {
        println!("I: {}, J: {}", I, J);
    }
}
Run Code Online (Sandbox Code Playgroud)

错误:

error[E0133]: use of mutable static is unsafe and requires unsafe function or block
 --> src/main.rs:2:21
  |
2 | static mut J: i64 = I + 3;
  |                     ^ use of mutable static
  |
  = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will …
Run Code Online (Sandbox Code Playgroud)

rust

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

如何派生serde :::反序列化具有生命周期成员的结构

如何Deserialize为内部寿命不同或相等的对象派生结构?

操场

#[derive(Default, Debug, serde::Deserialize, serde::Serialize)]
struct B<'a> {
    b: &'a str,
}

#[derive(Default, Debug, serde::Deserialize, serde::Serialize)]
struct C<'a> {
    c: &'a str,
}

#[derive(Default, Debug, serde::Deserialize, serde::Serialize)]
struct A<'a> {
    b: B<'a>,
    c: C<'a>,
}

fn main() {
}
Run Code Online (Sandbox Code Playgroud)

Rustc说这是不可能的:

#[derive(Default, Debug, serde::Deserialize, serde::Serialize)]
struct B<'a> {
    b: &'a str,
}

#[derive(Default, Debug, serde::Deserialize, serde::Serialize)]
struct C<'a> {
    c: &'a str,
}

#[derive(Default, Debug, serde::Deserialize, serde::Serialize)]
struct A<'a> {
    b: B<'a>,
    c: C<'a>,
}

fn main() { …
Run Code Online (Sandbox Code Playgroud)

lifetime rust serde

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

如何使两个功能启用导致 Rust 发生冲突?

我有两个特点:feature_1feature_2

[features]
default = ["feature_1"]
feature_1 = []
feature_2 = []
Run Code Online (Sandbox Code Playgroud)

我想让用户一次只选择其中一个,因为同时选择两者会导致一些重要代码的重复以及其他一些原因。我怎样才能做到这一点?

rust rust-cargo

4
推荐指数
1
解决办法
1225
查看次数

在.text部分中定义只读数据的原因是什么?

我正在学习汇编和低级编程,并阅读有关它.据说我们可以将任何数据放在elf文件的.text部分中,但当然我们不能因为页面/段的不同权限而改变它.但是没有告诉那里,因为在.text部分内部有数据的原因是什么.许多C++程序员也告诉我g ++编译器

static const char DATA[] = "SOME DATA";
Run Code Online (Sandbox Code Playgroud)

也在.text部分内.我想知道,为什么不将这些数据放在.rodata部分,目的是什么?如果使用.text,那么.rodata中应该存储什么?

主要问题是在长模式下的这种行为.

c++ assembly

4
推荐指数
1
解决办法
341
查看次数