我有一个密钥存储在一个变量中,如下所示:
$key = 4;
Run Code Online (Sandbox Code Playgroud)
我试着像这样得到相关的值:
$value = $array[$key];
Run Code Online (Sandbox Code Playgroud)
但它失败了.救命.
如果我有两个DirectoryInfo对象,我如何比较它们的语义相等?例如,以下路径应全部视为等于C:\temp:
C:\tempC:\temp\C:\temp\.C:\temp\x\..\..\temp\.以下可能等于或不等于C:\temp:
\temp 如果当前工作目录在驱动器上 C:\temp 如果当前工作目录是 C:\C:\temp.C:\temp...\如果考虑当前的工作目录很重要,我可以自己解决这个问题,所以这并不重要.尾随点在窗口中被剥离,因此这些路径确实应该相等 - 但它们不会在unix中被剥离,所以在mono下我会期望其他结果.
区分大小写是可选的.路径可能存在也可能不存在,用户可能拥有或可能没有路径权限 - 我更喜欢快速健壮的方法,不需要任何I/O(所以没有权限检查),但是如果有什么内置的话 - 我对任何"足够好"的东西都很满意......
这是我的文件夹结构:
/
|
-- program.cpp
-- utility.h
-- utility.cpp
|
-- module/
|
-- utility.h
-- utility.cpp
// Note that I have two files named utility.h and two named utility.cpp
Run Code Online (Sandbox Code Playgroud)
在构建项目时,我收到一个链接错误(LNK2028:未解析的令牌等等......),说明某些符号未定义.我已经确认所有符号都已定义,并且所有声明的函数都有相应的定义.
我有一种感觉,在编译我的项目时,utility.cpp两个文件夹中的文件都会utility.obj在输出文件夹中编译成相同的文件.结果,一个人覆盖另一个人.
c++ linker-errors visual-studio-2008 visual-c++-2008 visual-c++
代码是这样的:
JTextField txt = new JTextField();
txt.setBorder(BorderFactory.createMatteBorder(2,2,2,2,Color.red));
Run Code Online (Sandbox Code Playgroud)
但是文本字段忽略了我的调用setBorder.没有任何改变.
我要替换它JLabel(例如)
JLabel txt = new JLabel();
txt.setBorder(BorderFactory.createMatteBorder(2,2,2,2,Color.red));
Run Code Online (Sandbox Code Playgroud)
我会看到红色边框.
谁能告诉我为什么?或者甚至更好地向我解释如何添加边框JTextField?
如何在asp.net中的另一个控件之前动态插入控件.让我们说control1是网页上的一些控件,我想在control1之前动态创建和插入一个表.
例如
table1 = new Table();
table1.ID = "Table1";
Run Code Online (Sandbox Code Playgroud)
接下来会发生什么?要添加一个控件作为一个孩子,我会这样做:control1.Controls.Add(table1);但我怎么能插入table1作为control1的前一个兄弟?
我正在编写sql查询以获取帖子,并且只对此帖子的最后评论(如果存在).但我找不到一种方法来限制左连接中右列的1行.
以下是此查询的示例.
SELECT post.id, post.title,comment.id,comment.message
from post
left outer join comment
on post.id=comment.post_id
Run Code Online (Sandbox Code Playgroud)
如果帖子有3条评论,我会在这篇文章中获得3行,但我想只有1行和最后一条评论(按日期排序).
有人可以帮我解决这个问题吗?
假设我有一个双变量离散分布,即概率值P(X = i,Y = j)表,i = 1,... n和j = 1,... m.如何从这样的分布中生成随机样本(X_k,Y_k),k = 1,... N?也许有一个准备好的R函数,如:
sample(100,prob=biprob)
Run Code Online (Sandbox Code Playgroud)
biprob是2维矩阵?
一种直观的采样方法如下.假设我们有一个data.frame
dt=data.frame(X=x,Y=y,P=pij)
Run Code Online (Sandbox Code Playgroud)
x和y来自哪里
expand.grid(x=1:n,y=1:m)
Run Code Online (Sandbox Code Playgroud)
和pij是P(X = i,Y = j).
然后我们得到大小为N的样本(Xs,Ys),方法如下:
set.seed(1000)
Xs <- sample(dt$X,size=N,prob=dt$P)
set.seed(1000)
Ys <- sample(dt$Y,size=N,prob=dt$P)
Run Code Online (Sandbox Code Playgroud)
我使用set.seed()来模拟"双变量".直观地说,我应该得到类似于我需要的东西.我不确定这是否正确.因此问题:)
另一种方法是使用吉布斯采样,边际分布很容易计算.
我试过谷歌搜索,但没有真正相关的东西出现.
考虑参考Josh Smith的文章WPF Apps with Model-View-ViewModel Design Pattern,特别是a的示例实现RelayCommand(图3).(无需阅读整篇文章以了解此问题.)
在一般情况下,我想实现是优秀的,但我有一个代表团的问题CanExecuteChanged订阅到CommandManager的RequerySuggested事件.各州的文件RequerySuggested:
由于此事件是静态的,因此它只会作为弱引用保留在处理程序中.侦听此事件的对象应该对其事件处理程序保持强引用,以避免它被垃圾回收.这可以通过拥有私有字段并在附加到此事件之前或之后将处理程序指定为值来实现.
然而,示例实现RelayCommand不会对订阅的处理程序维护任何此类:
public event EventHandler CanExecuteChanged
{
add { CommandManager.RequerySuggested += value; }
remove { CommandManager.RequerySuggested -= value; }
}
Run Code Online (Sandbox Code Playgroud)
RelayCommand客户端的漏洞,要求用户RelayCommand了解自己的实施CanExecuteChanged并维护一个实时参考?如果是这样,例如,修改实现RelayCommand类似于以下内容以减轻CanExecuteChanged订户的潜在过早GC 是否有意义:
// This event never actually fires. It's purely lifetime mgm't.
private event EventHandler canExecChangedRef;
public event EventHandler CanExecuteChanged
{
add
{
CommandManager.RequerySuggested += value; …Run Code Online (Sandbox Code Playgroud)是否可以使用带有大量OR的WHERE语句?我想最多可能是500.
我正在处理一个Facebook应用程序.可以理解(但令人讨厌)他们不允许应用程序开发人员存储朋友关系.因此,我不能做一个明智的JOIN tblfriend或类似的事情.
要获得朋友列表,您可以使用FQL查询facebook ...这将返回一个facebook用户ID数组.我的想法是找到一个用户最近的朋友,我可以运行这样的查询:
'SELECT * FROM user WHERE fb_id = ' . implode('OR fb_id = ', $friend_array) . ' ORDER BY created LIMIT 0,1';
Run Code Online (Sandbox Code Playgroud)
有没有更好的办法?
php ×2
.net ×1
arrays ×1
asp.net ×1
c# ×1
c++ ×1
filesystems ×1
icommand ×1
java ×1
jtextfield ×1
left-join ×1
maven-2 ×1
mvvm ×1
mysql ×1
path ×1
r ×1
relaycommand ×1
sql ×1
sql-server ×1
statistics ×1
swing ×1
t-sql ×1
visual-c++ ×1
wpf ×1