我正在研究VS2010 C#,我想添加一个在VS2008下编译的.dll参考; 这个.dll存在2个版本:Debug和Release.
.dll不在.NET,COM或项目选项卡下,因此我只有"浏览器"选项卡将.dll添加到引用中.
我的问题是:当我在发布模式下编译时,如何向VS指示发布.dll版本,在调试模式下编译时,如何获取调试.dll版本?
谢谢.
为什么我会得到这个例外?
05-18 20:29:38.044: ERROR/AndroidRuntime(5453): java.lang.IllegalArgumentException: The key must be an application-specific resource id.
05-18 20:29:38.044: ERROR/AndroidRuntime(5453): at android.view.View.setTag(View.java:7704)
05-18 20:29:38.044: ERROR/AndroidRuntime(5453): at com.mypkg.viewP.inflateRow(viewP.java:518)
Run Code Online (Sandbox Code Playgroud)
有问题的一行是:
((Button) row.findViewById(R.id.btnPickContact)).setTag(TAG_ONLINE_ID,objContact.onlineid);
Run Code Online (Sandbox Code Playgroud)
我把它定义为:
private static final int TAG_ONLINE_ID = 1;
Run Code Online (Sandbox Code Playgroud) 我有一个最终的非静态成员:
private final HashMap<String,String> myMap;
Run Code Online (Sandbox Code Playgroud)
我想使用构造函数调用的方法初始化它.由于myMap是final,我的"helper"方法无法直接初始化它.我当然有选择:
我可以直接在构造函数中实现myMap初始化代码.
MyConstructor (String someThingNecessary)
{
myMap = new HashMap<String,String>();
myMap.put("blah","blahblah");
// etc...
// other initialization stuff unrelated to myMap
}
Run Code Online (Sandbox Code Playgroud)
我可以让我的帮助器方法构建HashMap,将其返回到构造函数,然后让构造函数将对象分配给myMap.
MyConstructor (String someThingNecessary)
{
myMap = InitializeMyMap(someThingNecessary);
// other initialization stuff unrelated to myMap
}
private HashMap<String,String> InitializeMyMap(String someThingNecessary)
{
HashMap<String,String> initializedMap = new HashMap<String,String>();
initializedMap.put("blah","blahblah");
// etc...
return initializedMap;
}
Run Code Online (Sandbox Code Playgroud)
方法#2很好,但是,我想知道是否有某种方法可以让helper方法直接操作myMap.也许一个修饰符指示它只能由构造函数调用?
MyConstructor (String someThingNecessary)
{
InitializeMyMap(someThingNecessary);
// other initialization stuff unrelated to myMap
}
// helper doesn't work since it can't modify …Run Code Online (Sandbox Code Playgroud) 我想继承UITextView,并向委托发送一条新消息.所以,我想扩展委托协议.这样做的正确方法是什么?
我从这开始:
接口:
#import <Foundation/Foundation.h>
@class MySubClass;
@protocol MySubClassDelegate <UITextViewDelegate>
- (void) MySubClassMessage: (MySubClass *) subclass;
@end
@interface MySubClass : UITextView {
}
@end
Run Code Online (Sandbox Code Playgroud)
执行:
#import "MySubClass.h"
@implementation MySubClass
- (void) SomeMethod; {
if ([self.delegate respondsToSelector: @selector (MySubClassMessage:)]) {
[self.delegate MySubClassMessage: self];
}
}
@end
Run Code Online (Sandbox Code Playgroud)
然而我得到了警告:'-MySubClassMessage:' not found in protocol(s).
我有一种工作方式,我创建自己的ivar来存储委托,然后也使用[super setDelegate] 但是这似乎是错误的存储委托.也许不是.
我知道我可以直接传递id,但我的目标是确保编译器检查提供给MySubClass的任何委托是否符合MySubClassDelegate协议.
为了进一步克服:
@interface MySubClassTester : NSObject {
}
@implementation MySubClassTester
- (void) one {
MySubClass *subclass = [[MySubClass alloc] init];
subclass.delegate = self;
} …Run Code Online (Sandbox Code Playgroud) 我使用jquery在JavaScript中编写一些逻辑,我必须根据REGEX模式检查输入内容:
"^[a-zA-Z0-9_]*$" //Alpha-numeric and _
Run Code Online (Sandbox Code Playgroud)
逻辑差不多完成,我只是在过滤功能键DEL时遇到一些问题,我的逻辑是这样的:
var FunctionsKey = new Array(8, 9, 13, 16, 35, 36, 37, 39, 46);
function keypressValidation(key) {
if (config.regexExp != null) {
if ($.inArray(key, FunctionsKey) != -1) {
return true;
}
else {
var keyChar = String.fromCharCode(key);
return RegexCheck(keyChar);
}
}
return true;
}
Run Code Online (Sandbox Code Playgroud)
如果KeyCode是数组中的其中一个,我让它通过,如果不是我得到char并将它与REGEX进行比较.问题是:在一些浏览器中DEL和'.' (期间标志)具有相同的密码46.
那么是否有一个更好的逻辑来过滤功能键或者我必须为该情况写一个条件,可能从数组中删除46并尝试将其转换为char,如果是(.)让它转到正则表达式函数,如果没有让它通过?另一个问题是在某些浏览器中是否有更多的共享密钥代码?
编辑:我建议的解决方案不会工作,因为用户按下哪个键(DEL或句点)无关紧要我至少在OPERA和FF =(.
我有一个界面:
public interface IMech {
}
Run Code Online (Sandbox Code Playgroud)
以及实现它的类
public class Email implements IMech {
}
Run Code Online (Sandbox Code Playgroud)
以及实现此方法的第三个类:
public void sendNotification( Class< IMech > mechanism ){
}
Run Code Online (Sandbox Code Playgroud)
现在我试图像这样调用这种方法
foo.sendNotification(Email.class);
Run Code Online (Sandbox Code Playgroud)
但我一直有例外说:
The method sendNotification(Class<IMech>) in the type RemediationOperator is not applicable for the arguments (Class<Email>)
Run Code Online (Sandbox Code Playgroud)
如果它接口那个类,这不应该工作吗?
我应该使用jquery的本地副本,还是应该链接到Google或Microsoft提供的副本?我主要关注速度.我听说只是从其他域中提取内容可以获得与浏览器限制连接的方式相关的性能优势.特别是,有没有人对谷歌与微软和本地的速度和延迟进行基准测试?
此外,我是否必须同意从第三方链接的任何条件或许可?
我希望能够通过新建视图模型并将贡献域模型作为参数传递(如下面的代码),将域模型映射到视图模型.我的动机是不再重复使用映射代码和提供一种简单的映射方式(不使用自动化器).一位朋友说,视图模型不应该知道有关传递给可选构造函数的"支付"域模型的任何信息.你怎么看?
public class LineItemsViewModel
{
public LineItemsViewModel()
{
}
public LineItemsViewModel(IPayment payment)
{
LineItemColumnHeaders = payment.MerchantContext.Profile.UiPreferences.LineItemColumnHeaders;
LineItems = LineItemDomainToViewModelMapper.MapToViewModel(payment.LineItems);
ConvenienceFeeAmount = payment.ConvenienceFee.Fee;
SubTotal = payment.PaymentAmount;
Total = payment.PaymentAmount + payment.ConvenienceFee.Fee;
}
public IEnumerable<Dictionary<int, string>> LineItems { get; set; }
public Dictionary<int, string> LineItemColumnHeaders { get; set; }
public decimal SubTotal { get; set; }
public decimal ConvenienceFeeAmount { get; set; }
public decimal Total { get; set; }
}
Run Code Online (Sandbox Code Playgroud) 假设我有一个字符串列表,其中每个字符串都是
对于这些字符串中的每一个,我想识别字符串中字符的位置,使字符串唯一.
所以对于三个字符串的列表
abcd
abcc
bbcb
Run Code Online (Sandbox Code Playgroud)
对于第一个字符串,我想识别第四个位置d中的字符,因为d没有出现在任何其他字符串的第4个位置.
对于第二个字符串,我想识别第四个位置c中的字符.
对于第三个字符串,我想识别第一个位置b中的字符和第四个位置的字符,也是b.
这可以简洁地表示为
abcd -> ...d
abcc -> ...c
bbcb -> b..b
Run Code Online (Sandbox Code Playgroud)
如果您考虑相同的问题,但使用二进制数列表
0101
0011
1111
Run Code Online (Sandbox Code Playgroud)
那么我想要的结果就是
0101 -> ..0.
0011 -> .0..
1111 -> 1...
Run Code Online (Sandbox Code Playgroud)
保持二进制主题我可以使用XOR来识别哪个位在两个二进制数内是唯一的
0101 ^ 0011 = 0110
Run Code Online (Sandbox Code Playgroud)
我可以解释为这意味着在这种情况下,第二和第三位(从左到右读取)在这两个二进制数之间是唯一的.这种技术可能是红鲱鱼,除非它以某种方式可以扩展到更大的列表.
蛮力方法是依次查看每个字符串,并为每个字符串迭代列表中其余字符串的垂直切片.
所以列表
abcd
abcc
bbcb
Run Code Online (Sandbox Code Playgroud)
我会先说
abcd
Run Code Online (Sandbox Code Playgroud)
并迭代垂直切片
abcc
bbcb
Run Code Online (Sandbox Code Playgroud)
这些垂直切片将在哪里
a | b | c | c
b | b | c | b
Run Code Online (Sandbox Code Playgroud)
或以列表形式,"ab","bb","cc","cb". …
我已经设置了一个抽象的父类,以及一个扩展它的具体类.为什么父类不能调用抽象函数?
//foo.php
<?php
abstract class AbstractFoo{
abstract public static function foo();
public static function getFoo(){
return self::foo();//line 5
}
}
class ConcreteFoo extends AbstractFoo{
public static function foo(){
return "bar";
}
}
echo ConcreteFoo::getFoo();
?>
Run Code Online (Sandbox Code Playgroud)
错误:
致命错误:无法 在第5行的foo.php中调用抽象方法AbstractFoo :: foo()
java ×2
jquery ×2
abstract ×1
algorithm ×1
android ×1
asp.net-mvc ×1
brute-force ×1
constructor ×1
delegates ×1
final ×1
hosting ×1
interface ×1
iphone ×1
javascript ×1
keyboard ×1
keypress ×1
methods ×1
objective-c ×1
oop ×1
php ×1
static ×1
viewmodel ×1