这个问题的两个部分
1)对正在发生的事情的理解是正确的吗?
"if(obj)"正在测试以查看指针是否不是0x0,也就是设置为整数存储器地址
"if(obj!= nil)"将对象的内存地址与通用nil对象的内存地址进行比较
2)所以在我不知道变量是否指向任何东西的情况下,如果是,我也不知道该对象是否是有效对象或nil.我希望根据这些信息做各种各样的事情,而不仅仅是将信息传递给obj,如果它是零,我认为这是安全的.这段代码是正确还是必要的?
if (obj && obj != nil) {
// Do a bunch of things that should only happen if obj is pointing to a valid object
[obj someMessage];
[anotherObj someOtherMessage];
}
Run Code Online (Sandbox Code Playgroud)
多谢你们!
我正在使用Joomla网站,我需要首页看起来与其他页面略有不同,但不足以保证使用两个主题(更新两个样式表和两套样式是一件痛苦的事情.每次我想做一个小改动时的图像).
我的想法是在模板的index.php中进行一些测试:如果我们在主页上,请提供X,否则,请提供Y.但是,我不完全确定如何测试它.我不能只使用URL,因为url.com/和url.com/index.php以及url.com/index.php?等等都是有效的.
有谁知道我要做的事情的方法?像$ _JOOMLA ['page']变量或类似的方便吗?
谢谢!--Mala
有没有人知道运行Windows服务的任何已建立的最佳实践(在我的情况下,在.NET中开发),以便它们(自动)正确地故障转移到另一台服务器,以实现高可用性?
我可以看到这样做的主要方式是在需要时启动辅助服务器(在这种情况下需要监视其他服务器的东西),或者让两个服务一起运行(在这种情况下,他们需要同步他们的工作所以他们不会尝试做同样的事情).
是否存在针对此类问题的模式或模型?我知道确切的情况会产生很大的不同,但这似乎是一个相当普遍的问题.
谢谢
约翰
由于ASP.NET MVC仍处于测试阶段,是否可以在生产环境中使用它?
自从StackOverflow和许多其他网站使用它以来一定没问题吧?我一直想尝试一下,但我知道如果我提议在生产中实际使用它,我会得到阻力,因为它仍处于测试阶段.
PHP出现,当我使用被赋予不同的散列值php -r <code>
在命令行上,当我与执行该文件php <file>
,php -f <file>
或运行在Apache代码.
例如,命令行上的SHA1用法使用-r
:
$ php -r "print sha1('$1S*90');"
77cd8b48ceca53e018f80536b0a44c5b6710425f
Run Code Online (Sandbox Code Playgroud)
当我尝试使用testSHA.php
以下文件时:
<?php
print sha1('$1S*90');
?>
Run Code Online (Sandbox Code Playgroud)
并使用mod_php5
以下命令在命令行或Apache内部运行:
$ php testSHA.php
201cb5aaa7d4db1a49d9be1f2c06d45e4c2a69f2
Run Code Online (Sandbox Code Playgroud)
但奇怪的是,当我尝试使用不同的输入字符串(例如"123456789")时,哈希与两种方法匹配.
我不认为我在这两种方法中使用不同的编码或字符集.我也尝试过使用MD5,并且仍然在命令行上使用-r
和'-f' 获得不同的哈希值.
有人可以用上面的两种方法指出为什么哈希会有所不同吗?有没有办法在命令行上运行PHP,我可以在不输入文件的情况下键入代码,并看到输出就像在文件/ Apache中运行一样?当未设置单步代码调试时,我使用命令行进行快速代码段测试.
谢谢.
PS:我在OpenSUSE 11.1上使用PHP 5.2.11和Suhosin-Patch 0.9.7(cli).
我在mysql中有一个varchar(255)字段,用于显示页面的标题,我收到了一个请求来标记特定标题的某些字符.我用一些html更新了这个标题但这没有按预期呈现.
而不是H 2 O我得到:
H<sup>2</sup>O
Run Code Online (Sandbox Code Playgroud)
谢谢!
我正在使用Moose 角色在类中的某些存取方法中应用一些包装器行为.我想将此角色应用于许多模块,每个模块都有一组不同的属性,我想要包装它们的访问器.有没有办法从角色中访问正在应用的模块的元类?即是这样的:
package My::Foo;
use Moose;
with 'My::Role::X';
has [ qw(attr1 attr2) ] => (
is => 'rw', # ...
);
has 'fields' => (
is => 'bare', isa => 'ArrayRef[Str]',
default => sub { [qw(attr1 attr2) ] },
);
1;
package My::Role::X;
use Moose::Role;
# this should be a Moose::Meta::Class object
my $target_meta = '????';
# get Class::MOP::Attribute object out of the metaclass
my $fields_attr = $target_meta->find_attribute_by_name('fields');
# extract the value of this attribute - should be …
Run Code Online (Sandbox Code Playgroud) 我经常看到line_item表用于从其他表中复制一个或多个字段的订单或发票,以便在放置客户的产品订单时拍摄快照.
但是,在我的架构中,我可以生成订单视图而无需复制数据.因此,查询订单/产品/价格数据要贵一些,但我在复制/插入时节省了时间,空间和冗余.我理解复制/插入是一次性事务,而查找将需要多次 - 但是,我只处理给定表中的数十万条记录,我不希望性能是一个问题.
因此,因为a)我的模式支持准确的查找而没有快照,b)我不需要查找优化,我认为运行计算而不是快速计算是有意义的-射击.或者有什么我想念的东西,我应该总是在这样的情况下拍摄快照吗?
以下是查找计算的示例:
# display order items for a particular order on a particular date
# get order, products and base prices from order_id
order_products = SELECT * FROM order_has_product ohp
INNER JOIN price ON (price.product_id = ohp.product_id)
INNER JOIN order ON (order.id = ohp.order_id)
WHERE order_id = ?
# calculate price of each product at order.datetime_opened
for op in order_products:
tax = SELECT SUM(tax.rate) FROM product_has_tax pht
INNER JOIN tax ON (tax.id = pht.tax_id)
WHERE pht.product_id …
Run Code Online (Sandbox Code Playgroud) 我想在C中实现一个字典数据结构,我想尽可能通用.也就是说它可以接受一对可以是任何类型的值.
如何初始化一个可以接受任何类型的变量?
如何将该类型转换回我想要的类型?(类型转换)
谢谢.
我正在调用Win32 DrawText
函数将一些文本输出到设备上下文中.文本很长,很好地包装在第二行.问题是我需要减少线之间的空间(我猜减少线高?).关于如何做到这一点的任何想法?
我只会打DrawText
两次电话(每一行一次)但是我必须做自己的自动换行.
还有其他方法吗?
谢谢