小编The*_*eer的帖子

python中的最佳返回类型策略

我正在为下一个问题寻找一种"其意图完成的方式"解决方案:

我有一个名为的类InputChecker,它接受一个输入文件,检查它的内容,如果一切正常,则将文件返回到下一个class(ExpofitAgent)以进行进一步的操作.

但是,如果文件不是应该的形式,则InputChecker生成一条错误消息,指出错误发现在文件的哪一行.

InputChecker 不会打印错误,它只会生成稍后打印的消息.

因为我在python中这样做,我的方法可以返回一个文件或一个字符串.如何在不需要添加额外标志的情况下检查文件是否正常?

python error-handling exception-handling exception

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

Qt信号和插槽机制被主循环阻塞

我有一个以下的情况.

  • Socketfor循环中创建了2个对象(原始问题有1000个对象).在创建时,start()调用该方法.
  • start()创建一个QTcpSocket尝试连接到某个主机的.
  • Socket有插槽connected()从QTcpSocket 捕获信号并打印一些调试输出

所发生的事情是按时间顺序首先Socket创建所有对象,然后启动套接字.以下是调试选项的示例输出:

1. Created Socket object 1
2. Invoked Socket object 1 start()
3. Created Socket object 2
4. Invoked Socket object 2 start()
5. Socket object 1 TcpSocket Connected
6. Socket object 2 TcpSocket Connected
Run Code Online (Sandbox Code Playgroud)

码:

//main.cpp
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    for (int i=0; i<10; i++)
    {
        Socket *socket = new Socket();
        qDebug() << "Socket …
Run Code Online (Sandbox Code Playgroud)

qt event-loop signals-slots qt-signals

0
推荐指数
1
解决办法
1232
查看次数

单步执行静态方法时,gdb不显示''this''?

我有以下情况.这是该课程的精简版.我在Qt创建者中运行它并在真实场景中使用Qt.

class MyClass
    {
    public:
         MyClass();
         static MyClass *instance;
         static void myMethod(int a, int b);
         int name;
    };

    MyClass  *MyClass::instance = 0;

    MyClass::MyClass(){
    if (instance)
        exit(-1);
    instance = this;
    }

void MyClass::myMethod(int a, int b){
        if(instance->name == a) qDebug() << "hello";
    }

int main(int argc, char *argv[])
{
    MyClass cls;
    cls.myMethod(1,2);
}
Run Code Online (Sandbox Code Playgroud)

我试图通过调试myMethod器进入调试.当我输入方法时,只有a 1b 2在手表中可见,并且没有参考thisinstance.

更新 答案说明静态方法没有绑定到对象,这就是没有this可用的原因.

在这个实现中,instance一旦我进入,静态方法访问调试器中我想要提供的内容myMethod.

我如何使其可用/可见?

c++ debugging gdb debug-symbols

0
推荐指数
1
解决办法
309
查看次数

两个数字之间的距离/绝对误差

获得最大值和最小值之间距离的最简洁方法是什么?

  1. 最大值始终大于最小值(在1d轴上更靠右,而不是绝对值).
  2. 只要满足条件1,最大值和最小值可以是符号的任意组合(正和负)

max =  1  min = -1  ->  dist = 2 
max =  2  min =  1  ->  dist = 1 
max = -1  min = -2  ->  dist = 1
Run Code Online (Sandbox Code Playgroud)

python numpy distance

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