问题列表 - 第29936页

在Moose子程序中,$ meta如何进入@_?

chromatic最近的博客让我对Moose子程序感到好奇has.我正在查看Moose源代码并注意到在has子例程中,有一个$meta从中解压缩的变量@_.哪里$meta来的?我已经开始涉及各种Moose和Class :: MOP模块.在许多子例程中,它似乎$meta通常被认为是第一个参数@_,即使它没有作为参数专门传递给它.

编辑:这是has子程序的原始源代码:

sub has {
    my $meta = shift;
    my $name = shift;

    Moose->throw_error('Usage: has \'name\' => ( key => value, ... )')
        if @_ % 2 == 1;

    my %options = ( definition_context => Moose::Util::_caller_info(), @_ );
    my $attrs = ( ref($name) eq 'ARRAY' ) ? $name : [ ($name) ];
    $meta->add_attribute( $_, %options ) for @$attrs;
}
Run Code Online (Sandbox Code Playgroud)

perl moose

6
推荐指数
3
解决办法
393
查看次数

c ++ std :: vector是如何工作的?

如何添加和删除元素"重新缩放"数据?如何计算矢量的大小(我相信它是跟踪的)?任何其他额外的资源来了解矢量将不胜感激.

c++ vector

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

如何判断我的网站是否运行ASP.NET MVC或Web窗体?

我是一名非编码员,需要向我的开发人员提供一些信息.其中一个问题是我们是运行ASP.NET MVC还是Web Forms?我能说出这个最好的方法是什么.如果你想看一下,该网站是http://sokanu.com(只是一个启动页面)

多谢你们

c# asp.net-mvc webforms

14
推荐指数
2
解决办法
4661
查看次数

为了使用 REST API 要实现什么设计模式?

我正在启动一个新项目,该项目需要使用基本上返回 JSON 和 XML 文件的外部 REST API。它类似于StackExchange API,我看到为该 API 完成的每个包装器都有不同的方法;例如,stackoverflow-java-sdk使用Adapter Pattern

因此,为了确保每个新的 API 功能都可以轻松包含在内……最好的设计模式是什么?

java oop api rest design-patterns

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

如何将文件指针(FILE*fp)转换为文件描述符(int fd)?

我有一个FILE *,通过电话回来fopen().我需要从中获取文件描述符,以便进行调用fsync(fd).从文件指针获取文件描述符的功能是什么?

c unix linux posix file

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

strupr(); 我不做的工作

我做了一个程序,将小写字符串转换为大写字母,如strupr(); 在strings.h ..当我运行程序时打印一些ascii代码

#include<stdio.h>
#include<conio.h>

void xstrupr(char string[]);

void main(void)
{
    char string[40];
    puts("Enter string:");
    gets(string);
    xstrupr(string);
    printf(" %s ",string);
    getch();
}

void xstrupr(char string[])
{
    int i;
    for(i=0;;i++)
    {
        if ((string[i]>='a')&&(string[i]<='z') )
            string[i]+=64;
        else
            if(string[i]=='\0')
                break;
    }
}
Run Code Online (Sandbox Code Playgroud)

c

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

使用INSERTED的SQL Server插入语句来获取新ID和现有ID

我正在将记录从一个sql server db插入另一个.我需要获取新插入的id并更新源表上的字段.我可以通过INSERTED选项获取新ID没问题.但是,我似乎无法从源表中获取ID.目标表没有源ID的字段.源表是转换表,我不想用转换字段污染目标表.这可能是不可能的,但我想我先和你们一起检查一下.

drop table #Table1
CREATE TABLE #Table1
(
    Table1ID INT,
    Table2ID INT,
    NAME VARCHAR(32)
)

INSERT INTO #Table1
VALUES 
      (1, NULL, 'Fred')
     ,(2, NULL, 'Tom')
     ,(3, NULL, 'Sally')     

--ok, im inserting into #Table2
drop table #Table2
CREATE TABLE #Table2
(
    [Table2ID] [int] IDENTITY(1,1) NOT NULL,
    NAME VARCHAR(32)
)

--THE RUB, I want to insert Table2ID into table3 
--along with Table1ID. I cannot seem to reference table1
--Any Ideas?
insert into #Table2(NAME)
OUTPUT INSERTED.Table2ID, T.Table1ID into #Table3
select Name …
Run Code Online (Sandbox Code Playgroud)

sql-server identity insert

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

将对象转换为双倍的最快方法?

将对象转换为double的最快方法是什么?我现在正处于一段代码中,其中包括:

var d = double.TryParse(o.ToString(), out d);  // o is the Object...
Run Code Online (Sandbox Code Playgroud)

首先想到的是将其重写为

var d = Convert.ToDouble(o);
Run Code Online (Sandbox Code Playgroud)

但实际上会更快吗?

编辑: 除了运行配置文件(顺便说一下,我强烈建议任何开发人员使用JetBrains dotTrace),我运行了Reflector,这帮助我提出了以下内容(或多或少相关的代码部分):

if (o is IConvertible)
{
    d = ((IConvertible)o).ToDouble(null);
}
else
{
    d = 0d;
}
Run Code Online (Sandbox Code Playgroud)

原始代码double.TryParse()在140ms内执行.新代码在34ms内执行.我几乎可以肯定这是我应该采取的优化路径,但在我这样做之前,有没有人看到我的"优化"代码出现问题?在此先感谢您的反馈!

c# performance .net-3.5

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

从JDK中删除Swing?

"JSR-296(Swing应用程序框架)已不再开发,不会像最初计划的那样成为官方Java开发工具包的一部分.您仍然可以使用Swing应用程序框架库,但预计不会进一步开发."

那么该怎么办?新的API取而代之?

java swing swing-app-framework

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

显示/隐藏没有框架

搜索脚本,可以在没有框架的情况下显示/隐藏功能.

就像是:

<span rel="toggle" href="/somelink.html">Title</span>
<div class="toggle">Hidden block</div>

.toggle { display: none; }
Run Code Online (Sandbox Code Playgroud)

.toggle单击后应显示阻止span.就像toggle()在jQuery上一样.

谢谢.

javascript toggle show-hide

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