小编Mar*_*cka的帖子

如何在C#中编组int*?

我想在非托管库中调用此方法:

void __stdcall GetConstraints(

  unsigned int* puiMaxWidth,

  unsigned int* puiMaxHeight,

  unsigned int* puiMaxBoxes

);
Run Code Online (Sandbox Code Playgroud)

我的解决方案

  • 代表定义:

    [UnmanagedFunctionPointer(CallingConvention.StdCall)] private delegate void GetConstraintsDel(UIntPtr puiMaxWidth,UIntPtr puiMaxHeight,UIntPtr puiMaxBoxes);

  • 方法的调用:

    // PLUGIN NAME
    GetConstraintsDel getConstraints = (GetConstraintsDel)Marshal.GetDelegateForFunctionPointer(pAddressOfFunctionToCall, typeof(GetConstraintsDel));
    
     uint maxWidth, maxHeight, maxBoxes;
    
     unsafe
     {
        UIntPtr a = new UIntPtr(&maxWidth);
        UIntPtr b = new UIntPtr(&maxHeight);
        UIntPtr c = new UIntPtr(&maxBoxes);
        getConstraints(a, b, c);
     }
    
    Run Code Online (Sandbox Code Playgroud)

它有效,但我必须允许"不安全"的标志.有没有不安全代码的解决方案?或者这个解决方案好吗?我不太明白用不安全标志设置项目的含义.

感谢帮助!

.net marshalling intptr

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

计算大数的加权平均值

我想要得到几个数字的加权平均值.基本上我有:

Price    - 134.42
Quantity - 15236545
Run Code Online (Sandbox Code Playgroud)

可以有少至一个或两个或多达五十或六十对价格和数量.我需要弄清楚价格的加权平均值.基本上,加权平均值应该给对象提供非常小的权重

Price    - 100000000.00
Quantity - 3
Run Code Online (Sandbox Code Playgroud)

以及更多对上面的那对.

我现在的公式是:

((price)(quantity) + (price)(quantity) + ...)/totalQuantity
Run Code Online (Sandbox Code Playgroud)

到目前为止,我做到了这一点:

        double optimalPrice = 0;
        int totalQuantity = 0;
        double rolling = 0;
        System.out.println(rolling);

        Iterator it = orders.entrySet().iterator();
        while(it.hasNext()) {
            System.out.println("inside");
            Map.Entry order = (Map.Entry)it.next();
            double price = (Double)order.getKey();
            int quantity = (Integer)order.getValue();
            System.out.println(price + " " + quantity);

            rolling += price * quantity;
            totalQuantity += quantity;
            System.out.println(rolling);
        }
        System.out.println(rolling);
        return rolling/totalQuantity;
Run Code Online (Sandbox Code Playgroud)

问题是我很快就将"滚动"变量最大化了.

我怎样才能真正得到加权平均值?

java average weighted-average

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

RFC有哪些许可证?

我想在我的网页上有RFC,我想知道它是否被允许.特别是我对RFC提供的许可证感兴趣.

对不起,如果这不是一个真正的SO类型的问题.

rfc

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

使用NPM重命名文件

有没有办法在npm脚本中重命名单个文件?我想准备分发文件,但我需要建立的文件的命名方式与它们在源代码中的不同...

我尝试过orn,但这似乎只能在命令行上运行,而不是作为npm脚本.我特别想要添加一个跨平台的依赖项来完成我的项目,而不是编写我自己的javascript脚本来复制文件.

我理想的解决方案是我可以包含在内package.json,作为一行命令,例如rename old-file-name new-file-name

javascript node.js npm package.json

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

Java中的文字分配

定义有什么区别

double example = 23.1d
Run Code Online (Sandbox Code Playgroud)

要么

double example = 23.1
Run Code Online (Sandbox Code Playgroud)

为什么long,float和double可以以l,f,d结尾?

java double literals

6
推荐指数
2
解决办法
8011
查看次数

是否可以针对PHP中的多个模式验证XML?

我想知道是否可以在PHP中对多个模式验证xml,或者我必须以某种方式合并我的模式.

谢谢你的回答!

php xml multiple-schema

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

在Jquery中为新节点添加自定义数据属性不起作用

我尝试data在此代码中使用该方法(jQuery 1.7.1):

var q = '<div class="form-error-marker"></div>';
var t = $(q).data('message', message).insertAfter(el); 
Run Code Online (Sandbox Code Playgroud)

它不起作用.

请注意,这有效:

var t = $(q).attr('data-message', message).insertAfter(el);
Run Code Online (Sandbox Code Playgroud)

为什么第一个变体不起作用?

编辑:insertAfter正常工作,然后添加新的div el(这是我通过getElementById()函数得到的一个元素的实例;长话短说我有一个我扩展的库).

当我说'它不起作用'时,我的意思是不存储属性'data-message'.

javascript jquery

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

使用"计算"​​URL锚定

我有一个JS脚本,在HTML页面中附加了对:input + anchor

我可以在重定向发生之前计算URL吗?

现在我的链接看起来像这样:

<a href="#" onclick="myFunct();return false;">link</a>
Run Code Online (Sandbox Code Playgroud)

myFunct用于window.location.href重定向网页.这种方法的问题在于我无法(显然)CTRL +点击链接以在新标签中打开目标链接.

细节:

  • 从服务器获取URL后,链接URL是已知的 - 这个操作对我来说非常昂贵,我想这样做只是在绝对必要的情况下.

  • 这个想法是:用户选择一个链接,他/她点击它,从服务器获取URL并重定向用户(如果他/她使用CTRL +点击,则在同一窗口或新选项卡中)

谢谢!

javascript jquery

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

将PHP接口导出到Typescript接口,反之亦然?

我正在试验Typescript,根据我目前的合同,我使用PHP编写后端代码。

在几个项目中,我为后端代码提供的AJAX响应类型编写了Typescript接口,以便前端开发人员(有时也是我,有时是其他人)知道期望什么并进行类型检查等。

在编写了一些这样的后端服务之后,似乎响应的接口和相关类也应该存在于PHP端。这让我认为,最好只用两种语言之一编写它们并运行一些构建时工具(在Typescript编译器运行之前,我先用gulp任务调用它)来导出它们与其他语言的接口。

这样的事情存在吗?可能吗?实际的?

(我意识到PHP不是强类型的,但是如果接口是用PHP编写的,那么那里可能会有一些类型提示,例如文档字符串,导出器可以识别并继承到Typescript。)

php interface typescript

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

服务类继承和文件顺序

我有服务(TypeScript中的类)app/resources/GeneralResource.ts和该文件夹中的其他服务app/resources/.我想继承我的所有资源GeneralResources.

GeneralResource.ts文件按字母顺序排列的所有文件(类)都正常工作.但是之前的所有文件(类)GeneralResource.ts都有执行时错误.

这是一个示例类:

export class DefectReasonResource extends GeneralResource implements IDefectReasonResource {

    static $inject = ['$q', '$http', 'baseUrl'];

    constructor(public $q:ng.IQService, public $http:ng.IHttpService, public baseUrl:string) {
       super($q, $http);
    }

    // ...
Run Code Online (Sandbox Code Playgroud)

这个类编译好:

var app;
(function (app) {
    var common;
    (function (common) {
        var DefectReasonResource = (function (_super) {
            __extends(DefectReasonResource, _super);
            function DefectReasonResource($q, $http, baseUrl) {
                _super.call(this, $q, $http);
                this.$q = $q;
                this.$http = $http;
                this.baseUrl = baseUrl;
            }
            DefectReasonResource.$inject = ['$q', '$http', 'baseUrl']; …
Run Code Online (Sandbox Code Playgroud)

angularjs typescript

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