问题列表 - 第10652页

方括号在Perl中按照推送语法表示什么?

我在阅读脚本时遇到了这种语法.我不确定方括号的用途是什么.

push @data, [ split //, $line ]; #printing this array gives crap values
Run Code Online (Sandbox Code Playgroud)

或者换句话说,上面和下面的区别是什么?

push @data, (split//, $line); #printing this gives actual values
Run Code Online (Sandbox Code Playgroud)

有什么建议?

arrays perl reference

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

C#Singleton,带有接受参数的构造函数

我想创建一个静态类或单例类,它接受在其构造函数中对另一个对象的引用.静态类已经出来了,但我想我可以创建一个在其构造函数中接受参数的单例.到目前为止,我没有任何运气搞清楚或谷歌搜索语法.这可能吗?如果是的话,我该怎么做?

对不起,在最初的帖子中没有任何例子,我匆匆写了.我觉得我的回答已经在回复中了,但这里有一些关于我想做的事情的澄清:

我想创建一个特定类型的单个实例(表示Singleton),但该类型的单个实例需要保存对不同对象的引用.

例如,我可能想要创建一个Singleton"Status"类,它拥有一个StringBuilder对象和一个Draw()方法,可以调用该方法将所述StringBuilder写入屏幕.Draw()方法需要知道我的GraphcisDevice才能绘制.所以我想这样做:

public class Status
{
private static Status _instance;
private StringBuilder _messages;
private GraphicsDevice _gDevice;

private Status(string message, GraphicsDevice device)
{
    _messages.Append(message);
    _gDevice = device;
}

// The following isn't thread-safe

// This constructor part is what I'm trying to figure out
public static Status Instance // (GraphicsDevice device) 
    {
    get
        {
        if (_instance == null)
            {
            _instance = new Status("Test Message!", device); 
            }
        return _instance;
        }
    }

public void UpdateMessage
...

public void Draw()
    {
    // …
Run Code Online (Sandbox Code Playgroud)

c# singleton constructor

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

Iphone错误终止以响应SpringBoard的终止

我在真正的手机中测试我的iphone应用程序,当我的程序运行几秒钟.它会自动退出并显示消息'终止以响应SpringBoard的终止'并在控制台显示程序正常退出.它是有线的,对吗?

我尝试了几次并且每次都发生过.该程序非常简单,并具有滚动视图,并添加约50个子视图,这些子视图不是由界面构建器创建的.

有些人已经尝试过了

  1. 在模拟器中运作良好
  2. Iphone解锁了iphone 1G和OS 2.2

    如何调试这个?我无法追踪任何错误代码,因为它说它是正常退出.状态0.

    谢谢

iphone debugging

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

使用`<textarea>`来防止脚本

嗯.而不是"defanging"输入或使用某种正则表达式删除标签,将用户的东西转储到一个<textarea>

例如,假设有一个PHP页面执行以下操作:

echo '<textarea>';
echo $_GET['whuh_you_say'] ;
echo '</textarea>';
Run Code Online (Sandbox Code Playgroud)

通常这很容易受到xss攻击,但是textarea,所有脚本标签只会显示为,<script>并且不会被执行.

这不安全吗?

php security xss textarea

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

错误:分配中的类型不兼容

我正在写一些客观的C代码,我无法弄清楚为什么这不起作用:

buttonRect = CGRectMake(0,0,100.0,100.0);//error:incompatible types in assignment
CGRect newFrame = CGRectInset(buttonRect, -0.2, -0.2);//error:incompatible type for argument 1 of CGRectInset
button.frame = newFrame;
Run Code Online (Sandbox Code Playgroud)

buttonRect是一个CGRect,在我的类中被定义为一个实例变量,而button是一个UIButton,也被定义为一个实例变量.为什么这不起作用?我的头文件:

//
//  MyViewController.h
//  HelloWorld
//
//  Created by RCIX on 7/10/09.
//  Copyright 2009 __MyCompanyName__. All rights reserved.
//

#import <UIKit/UIKit.h>


@interface MyViewController : UIViewController {
    UITextField *textField;
    UILabel *label;
    NSString *string;
    UIButton *button;
    CGRect *buttonRect;
}

@property (nonatomic, assign) CGRect *buttonRect;
@property (nonatomic, retain) IBOutlet UITextField *textField;
@property (nonatomic, retain) IBOutlet UILabel *label;
@property (nonatomic, …
Run Code Online (Sandbox Code Playgroud)

cocoa compiler-errors objective-c

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

bash/cygwin/$ PATH:我真的必须重启才能改变$ PATH吗?

我想使用安装在cygwin下的Python而不是直接在WinXP下安装的Python,所以我编辑了〜/ .bashrc并获取了它.没有改变.我尝试了其他的东西,但我没有做任何改变$ PATH的事情.所以我重新启动了.啊哈; 现在$ PATH已经改变为我想要的.

但是,谁能解释为什么会发生这种情况?什么时候通过cygwin(和bash)对环境(及其变量)的更改只在重启后生效?

(这有什么方法可以运行铁路?)(这个问题不太可能赢得任何积分,但我很好奇,而且我也厌倦了涉及这方面没有帮助的文档.)

python bash cygwin reboot path

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

RAISERROR严重程度不同意味着什么?

我最好的谷歌结果是这样的:

  • 低于11是警告,而不是错误
  • 11-16可供使用
  • 16以上是系统错误
  • 11-16之间没有行为差异

但是,从BOL,"任何用户都可以指定从0到18的严重级别".

在我的特定存储过程中,我希望将错误返回到.Net客户端应用程序,因此看起来11-18之间的任何严重性级别都可以解决问题.有没有人有关于每个级别的含义以及如何使用它们的任何权威信息?

sql-server raiserror

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

使用.NET生成具有给定扩展名的唯一临时文件名

可能重复:
如何使用.net创建具有特定扩展名的临时文件?

可以通过调用在.NET中创建临时文件

string fileName = System.IO.Path.GetTempFileName();
Run Code Online (Sandbox Code Playgroud)

这将在临时目录中创建一个扩展名为.TMP的文件.

如果您特别希望它有不同的扩展名怎么办?为了这个例子,假设我需要一个以.TR5结尾的文件.

明显的(和错误的)解决方案是打电话

string fileName = Path.ChangeExtension(Path.GetTempFileName(), "tr5"))
Run Code Online (Sandbox Code Playgroud)

这里的问题是:

  • 它仍然在temp目录中生成一个空文件(例如tmp93.tmp),现在它将无限期地挂起
  • 没有保证生成的文件名(tmp93.tr5)尚未存在

是否有一种简单而安全的方法来生成具有特定文件扩展的临时文件?

.net c#

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

检查表列上是否存在非聚集索引

在SQL Server 2000中,如何检查表的单个列上是否存在非聚集索引?

sql-server indexing

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

LINQ to SQL - 具有多个连接条件的左外连接

我有以下SQL,我试图将其转换为LINQ:

SELECT f.value
FROM period as p 
LEFT OUTER JOIN facts AS f ON p.id = f.periodid AND f.otherid = 17
WHERE p.companyid = 100
Run Code Online (Sandbox Code Playgroud)

我已经看到了左外连接的典型实现(即into x from y in x.DefaultIfEmpty()等),但我不确定如何引入其他连接条件(AND f.otherid = 17)

编辑

为什么AND f.otherid = 17条件是JOIN的一部分而不是WHERE子句?因为f某些行可能不存在,我仍然希望包含这些行.如果条件在WHERE子句中应用,在JOIN之后 - 那么我没有得到我想要的行为.

不幸的是:

from p in context.Periods
join f in context.Facts on p.id equals f.periodid into fg
from fgi in fg.DefaultIfEmpty()
where p.companyid == 100 && fgi.otherid == 17
select f.value
Run Code Online (Sandbox Code Playgroud)

似乎等同于:

SELECT …
Run Code Online (Sandbox Code Playgroud)

c# sql linq outer-join linq-to-sql

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