小编Fre*_*ool的帖子

Spring框架

什么是Spring Framework?它对Hibernate的贡献是什么?

java spring hibernate

11
推荐指数
3
解决办法
2731
查看次数

如何在引擎盖下实现Win32事件驱动编程?

在Win32 C++应用程序中,我们启动一个消息循环,从队列中获取消息,转换它们然后调度它们.最终,每条消息都到达我们的WndProc,在那里可以处理相关的事件.

我明白那一部分.我不明白的是介于两者之间.特别:

  1. 不同类型的OS中断处理程序必须将消息放入所述"消息队列"中,但该队列驻留在进程地址空间中的哪个位置?它是如何暴露给中断处理程序代码的?
  2. "翻译"消息意味着什么?TranslateMessage()真正的呼吁是什么?
  3. 一旦被调度DispatchMessage(),在到达我的WndProc之前,消息会在什么地方摆动(即操作系统用它做什么)?

如果有人知道上述的答案,请满足我的好奇心.谢谢.

windows winapi message-queue event-driven

11
推荐指数
2
解决办法
4279
查看次数

为什么模数运算符在c#中不能用于double?

考虑一下:

double x,y;
x =120.0;
y = 0.05;

double z= x % y;
Run Code Online (Sandbox Code Playgroud)

我试过这个,并期望结果为0,但它出来了0.04933333.

然而,

x =120.0;
y = 0.5;
double z= x % y;
Run Code Online (Sandbox Code Playgroud)

确实给出了0的正确结果.

这里发生了什么?

我试过Math.IEEERemainder(double, double)但它也没有返回0.这里发生了什么?

另外,另外,在C#中找到余数最合适的方法是什么?

.net c#

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

Windows如何"打开"工作?

我的印象是,当您双击文件(或从右键菜单中选择"打开方式")时,Windows只是以文件名作为参数调用应用程序.像这样的东西:

C:\> App.exe file.abc

但是,我只是双击一个.xls文件,然后检查出现的Excel实例的PEB.令我吃惊的命令行并没有包含文件名作为参数.

这让我感到疑惑.Windows用于使相关应用程序打开文件的机制究竟是什么?是否有一个特殊的API,每个支持此类工具的应用程序必须公开?

windows dde

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

null参数的IComparable行为

我正在实施IComparableIComprable<T>在我的一个课程中.CompareTo在给定null参数时,是否有关于每种情况下该方法应如何表现的建议?它应该返回正数还是抛出ArgumentNullException?或者这种行为可能因实施类而异?

我看到了MSDN文档(这里这里),但它在这个主题上没什么可说的.任何帮助将不胜感激.

.net c# icomparable

10
推荐指数
3
解决办法
3832
查看次数

如何在Python中使用try/catch获得更好的错误信息

考虑我用来检查存储的错误消息的try/catch块e.

尝试/抓住以获得 e

queryString = "SELECT * FROM benchmark WHERE NOC = 2"
try:
    res = db.query(queryString) 
except SQLiteError, e:
    # `e` has the error info 
    print `e`
Run Code Online (Sandbox Code Playgroud)

e这里的对象只包含上面的字符串.但是,当python报告未处理的错误时,它会显示一个非常详细的信息,如下所示:

Traceback (most recent call last):
  File "fool.py", line 1, in 
    open("abc.zyz", "r")
IOError: [Errno 2] No such file or directory: 'abc.zyz'

我的问题是,如何获取上述信息(文件和行号等)?或者,如果e包含此信息,它是如何存储在其中的?

python error-handling

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

什么是循环排序的数组?

我在互联网上看过它.什么是'循环排序的数组'?

arrays data-structures

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

单个流浪文件中的多个提供者?

我有一个用于构建本地VM的vagrant文​​件.我想添加EC2提供程序,并可以选择配置本地VM或EC2上的VM.

我可以在同一个Vagrantfile中为多个提供程序创建配置,并以某种方式选择在我执行时运行哪些提供程序vagrant up

vagrant vagrantfile

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

Java程序员 - C++人如何使用类?指向类,默认参数的指针?

我了解面向对象编程的方法,但我已经习惯了Java,直到最近我才接触过C++.

我认为我的问题与语法无关,与C++中的OOP哲学有关.我理解指针和地址与堆栈和堆之间的区别,以及东西,但我仍然觉得我错过了一些东西.

这是一个例子:我有一个包含一些数据的类(Shape).我有另一个类(App)使用了许多形状.

class Square {
    private: 
        int x;
        int y;
        int size;

    public:
        /* constructor */
        Square(int x, int y, int size);
}


class App {
    private:
        Square redSquare;
        Square blueSquare;

    public:
        void setup();
        void draw();
}
Run Code Online (Sandbox Code Playgroud)

在某些时候,某些东西将实例化我的应用程序并调用setup().问题在于,当我声明App类(在App.hpp中,比方说)时,"redSquare"和"blueSquare"被实例化,而不仅仅是声明.作为一名Java程序员,我将在本例中在setup()中实例化我的类.但是这意味着我不能像上面那样做,我必须将redSquare和blueSquare设置为POINTERS,然后我可以在setup()中使用new创建它们.

但是你会怎么做呢?或者你会使用默认参数创建一个构造函数,如上所述创建redSquare和blueSquare,然后使用像Square.init(x,y,size)之类的东西在App.setup()中设置这些方块的值?或者其他一些方式?

你有没有汇总课程,或只有指针?

我当然可以通过这种方式破解它,所以它可以自己工作,但我有一种感觉,我正在做"Java方式",而不是得到C++程序员的想法.

c++ constructor pointers

7
推荐指数
2
解决办法
767
查看次数

建议从Python脚本中运行另一个程序的方法

可能重复:
如何在Python中调用外部命令

我正在Windows机器上编写Python脚本.我需要启动另一个应用程序"OtherApp.exe".最合适的方法是什么?

直到现在我一直在看os.system()或者os.execl()他们看起来不合适(我甚至不知道后者是否会在Windows中工作).

python windows

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