小编Dan*_*ein的帖子

为什么C++编译需要这么长时间?

与C#和Java相比,编译C++文件需要很长时间.编译C++文件所需的时间比运行普通大小的Python脚本要长得多.我目前正在使用VC++,但它与任何编译器都是一样的.为什么是这样?

我能想到的两个原因是加载头文件和运行预处理器,但这似乎不应该解释为什么它需要这么长时间.

c++ performance compilation

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

nop操作码的目的是什么?

我正在通过MSIL并注意到有很多nop指令.MSDN文章称,如果操作码被修补,它们不采取任何操作并用于填充空间.它们在调试版本中比在发布版本中使用得更多.我知道这些语句用于汇编语言,以确保操作码适合字边界,但为什么MSIL需要它?

assembly cil

79
推荐指数
6
解决办法
5万
查看次数

我可以在mercurial变更集上更改用户名吗?

我没有在我的开发计算机上设置用户名并进行了一些提交.我可以追溯更改用户名,以便明确谁提交了这些更改集?

mercurial

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

如何在C#中将函数作为参数传递?

是否可以在C#中将函数作为参数传递?我可以使用Func或Action类来完成它,但这迫使我立刻声明整个函数签名.当我尝试使用Delegate时,我收到一个编译错误,说它无法将方法组转换为Delegate.

我正在研究Axial,我正试图让用户调用Web服务.我想要的是能够创建Visual Studio代理类,然后传入生成的函数.函数签名无关紧要,因为生成的代码仅使用函数名称.但是,我想传递函数而不是名称有两个原因:如果Web服务不存在或在Visual Studio中更新,则能够使用代理的Url属性和编译器错误.


public void AlertIt(object o) {
    Axial.DOM.Window.Alert(o.ToString());
}
public void CallAddService() {
    object[] param = new object[] { int.Parse(txtA.Text), int.Parse(txtB.Text) };
    Axial.ServerScript.CallWebService(new WSProxy.WS().Add, param, AlertIt, AlertIt);
}

class Axial.ServerScript {
    public void CallWebService(Delegate method, object[] param, Action<object> successCallback, Action<object> failureCallback) {
        // translate to javascript (already working)
    }
}
Run Code Online (Sandbox Code Playgroud)

c# reflection

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

静态工厂方法与实例(普通)构造函数?

在两者都可用的语言中,您更愿意看到实例构造函数或返回实例的静态方法吗?

例如,如果您要创建String一个char[]:

  1. String.FromCharacters(chars);

  2. new String(chars);

constructor design-patterns coding-style

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

是否需要显示空<div>?

我想展示一个背景颜色的div,其高度和宽度设置为100%,但没有内容.是否可以在不放置的情况下做到这一点 内?

编辑:感谢Mark Biek指出宽度和高度样式的空div显示了我的期望.我的div在一个表格单元格中,它没有显示.

<table style="width:100%">
<tr>
<th>Header</th>
<td><div id="foo"></div></td>
</tr>
</table>
Run Code Online (Sandbox Code Playgroud)

html

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

如何使用PostgreSQL中的字段创建多边形?

我在一个表中有8个实数值,我想将它组合成一个多边形.我无法弄清楚如何使用这些值创建多边形.我一直在尝试不同的变化

SELECT polygon(lat1,lon1,lat2,lon2,lat3,lon3,lat4,lon4) FROM table;
Run Code Online (Sandbox Code Playgroud)

但不断出现多边形函数不存在的错误或类型为多边形的输入语法无效.有没有人这样做过?

postgresql postgis polygon

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

如何使用PHP生成并发进程?

I'm trying to spawn multiple processes at once in PHP with proc_open, but the second call won't start until the first process has ended. Here's the code I'm using:

for ($i = 0; $i < 2; $i++)
{
    $cmdline = "sleep 5";
    print $cmdline . "\n";
    $descriptors = array(0 => array('file', '/dev/null', 'r'), 
                         1 => array('file', '/dev/null', 'w'), 
                         2 => array('file', '/dev/null', 'w'));
    $proc = proc_open($cmdline, $descriptors, $pipes);
    print "opened\n";
}
Run Code Online (Sandbox Code Playgroud)

php proc-open

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

SharePoint中默认的版本控制

如何修改SharePoint网站,以便默认情况下在文档库中打开版本控制?

sharepoint

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

编写.NET以外的Windows客户端应用程序的最佳方法是什么?

我正在尝试评估是否应该将.NET Framework作为我的新Windows应用程序的要求.我相信.NET是编写Windows客户端应用程序的最佳和最有效的方式,因此它归结为下一个最佳替代方案的痛苦程度.具体来说,我试图避免安装.NET客户端配置文件,它下载28MB,如果它像常规的.NET Framework安装程序,则需要永远.

我之前使用过wxWidgets和WTL,认为两者都是不错的选择.静态链接的wxWidgets可执行文件是30MB,但它将被打包.WTL占用空间小,但是使用丑陋的代码创建.我使用了一些MSI创建者,但它不是WiX或NSIS,这似乎是最好的免费选项.

我正在寻找任何建议,客户端配置文件安装程序的经验,小型自定义业务应用程序的经验或任何相关的建议.

编辑:我这里只赚了几千美元,所以我正在寻找免费或便宜的东西(在我已经拥有的Visual Studio之后).我不介意用一种新语言学习,但我更喜欢一种正在使用的语言.

.net c++ windows client

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

如何从Widget /本地服务调用Android远程服务(IPC)?

我正在尝试从小部件远程控制动态壁纸.他们在同一个APK中,但显然是不同的过程.调用动态壁纸的"活动"对我来说没什么用处,因为它是一个不同的过程.小部件有简单的按钮,按下时,

那么(我认为)我需要的是IPC和AIDL.

首先,我在壁纸一侧创建了AIDL,效果很好.它有三种方法,没有额外的参数.但是当我将客户端添加到窗口小部件时,我收到一个错误,告诉我无法绑定到该远程接口,因为窗口小部件已经是BroadcastListener.我尝试在不需要Widget成为BroadcastListener的情况下获取按钮处理,但这似乎是不可能的.

好吧没问题吧?我刚刚在窗口小部件中创建了一个绑定到远程接口的服务,因为虽然窗口小部件是BroadcastListener,但服务不是,一切都应该没问题.

或者我想.

好吧,我正在获取小部件的按钮来触发小部件服务.绑定到远程服务会产生以下警告:

无法启动服务Intent(act = com.blabla.IRemoteService):找不到.

我在小部件的服务中使用getApplicationContext()来绑定到远程的东西.我在清单中有小部件服务,但我没有远程服务.当我把它放在那里时,我得到一个非特定的InstantiationException.

在Widget的服务onStart()我这样做:

getApplicationContext().bindService(new Intent(IWallpaperRemote.class.getName()), 
  mConnection, Context.BIND_AUTO_CREATE);
Run Code Online (Sandbox Code Playgroud)

我也有...

private ServiceConnection mConnection = new ServiceConnection() {
    public void onServiceConnected(ComponentName className,
            IBinder service) {
        mService = IWallpaperRemote.Stub.asInterface(service);
        isBound = true;
        Log.i("WidgetServiceConnection", "binding to service succeeded");
    }

    public void onServiceDisconnected(ComponentName className) {
        mService = null;
        isBound = false;
        Log.i("WidgetServiceConnection", "binding to service lost!");
    }
};
Run Code Online (Sandbox Code Playgroud)

我的问题是:有没有人成功地从一个小部件进入另一个应用程序的远程调用?考虑到我在这里谈论一个动态壁纸,以及我对在小部件过程中调用活动但在动态壁纸中引起函数调用不感兴趣的事实,除了IPC之外我还有哪些选项,如果有的话?

如果IPC是去这里的方式,我做错了什么?

service android ipc widget aidl

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