问题列表 - 第32267页

理解按位AND运算符

我一直在阅读Kochan的书"Objective-C编程"中的Objective-C中的位运算符.

我对这一部分非常困惑,尽管到目前为止我已经真正了解了大部分内容.

以下是本书的引用:

按位AND运算符

按位AND运算经常用于屏蔽操作.也就是说,可以容易地使用该运算符将数据项的特定位设置为0.例如,语句

w3 = w1 & 3;
Run Code Online (Sandbox Code Playgroud)

w3将w1的值与常数3进行逐位AND运算.这与将w中的所有位设置为相同的效果,除了最右边的两位为0,并保留w1中最右边的两位.

与C中的所有二进制算术运算符一样,二进制位运算符也可以通过添加等号用作赋值运算符.该声明

word &= 15;
Run Code Online (Sandbox Code Playgroud)

因此执行与以下相同的功能:

word = word & 15;
Run Code Online (Sandbox Code Playgroud)

此外,它具有将除最右边的四位字之外的所有字设置为0的效果.当使用常量执行按位运算时,以八进制或十六进制表示法表示常量通常更方便.

好的,这就是我想要了解的内容.现在,我对这整个概念非常困惑,我只想找一点澄清,如果有人愿意帮我解决这个问题.

当书现在引用"设置所有位"时,所有位......究竟是什么.这不仅仅是第二个基数中的0或1,换句话说,二进制?

如果是这样,为什么在第一个例子中除了"最右边2"到0之外的所有位?它是2,因为它是3 - 1,从我们的常数中取3吗?

谢谢!

bit-manipulation objective-c operators bitwise-operators

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

寻找SC.exe实用程序的API,以及有关自动更新Windows Service的建议

我们已经构建了一个在客户端计算机上运行的Windows服务,该服务偶尔会下载其自身的较新版本,然后执行自我更新:安装新服务,启动它,停止旧服务并最终将其删除。该服务无法直接停止自身并做其他事情,因此它旋转了另一个可执行文件,完成了一些工作。正确地做到这一点是棘手的,当使用较新的.Net Framework构建较新的服务时(例如最近从.Net 2.0到.net 4.0的转换),这尤其糟糕。问题是.Net 2.0库无法在.Net 4.0服务上运行。

现在,一种方法是让服务的旧版本旋转一个新版本附带的帮助程序,但是...如果该服务的行为发生了重大变化,该怎么办?即使有些事情通常保持不变,我也对不混淆版本感到更安全-有助于降低设计复杂性。

现在,在Windows Services上似乎有一种.Net版本无关的操作方式:该sc.exe工具:http : //support.microsoft.com/kb/251192

我想知道这是否真的是我寻求的银弹。现在,因为我将以编程方式调用此人并检查错误,所以我不妨为此使用API​​。理想情况下,我将有一个本机C ++项目,该项目可编译为与SC.exe接口的本机exe。这可能吗?如果没有,那我该如何在不同计算机上定位sc.exe?它们可以是32位或64位,并运行从Win XP SP2 / 3开始的任何版本的Windows。

让我知道您是否对我的问题有疑问,或者有一些巧妙的想法,或者对我在此处提出的确切问题有答案。


编辑:如果我尝试使用2.0代码安装4.0服务,则会收到与执行相同的错误:

> C:\Windows\Microsoft.NET\Framework\v2.0.50727\InstallUtil.exe MyService4.exe
Run Code Online (Sandbox Code Playgroud)

Microsoft(R).NET Framework安装实用程序2.0.50727.4927版本(c)Microsoft Corporation。版权所有。

初始化安装时发生异常:System.BadImageFormatException:无法加载文件或程序集“ file:/// [path] \ MyService4.exe”或其依赖项之一。该程序集由比当前加载的运行时新的运行时构建,无法加载。

.net windows-services self-updating

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

将大量文本写入文本框

我正在将一个包含大量格式化文本的日志写入.net windows窗体应用程序中的文本框.

一旦数据超过几兆,它就会很慢.因为我追加字符串必须每次都重新分配吗?我只需要将值设置为文本框一次,但在我的代码中我做了line+=data数万次.

有更快的方法吗?也许一个不同的控制?我可以使用链接列表字符串类型吗?

c# textbox winforms

10
推荐指数
3
解决办法
6071
查看次数

C#模数运算符

我可以写程序

int a = 3;
int b = 4;

Console.WriteLine(a % b);
Run Code Online (Sandbox Code Playgroud)

我得到的答案是3. 3 mod 4 = 3怎么样?

我无法弄清楚这是如何以这种方式计算的.

c# modulus

21
推荐指数
4
解决办法
7万
查看次数

从ini/xml文件加载设置

如何从与我的程序位于同一文件夹中的外部xml文件加载设置?或者我应该使用旧的.ini文件?它只是我需要传递给我的应用程序的MySQL服务器名称和位置名称.

c#

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

帮我改写这个查询

我有这个问题:

SELECT diamond_id, carat, clarity, color, cut,
    CASE clarity
        WHEN "FL" THEN 0
        WHEN "IF" THEN 1
        WHEN "VVS1" THEN 2
        WHEN "VVS2" THEN 3
        WHEN "VS1" THEN 4
        WHEN "VS2" THEN 5
        WHEN "SI1" THEN 6
        WHEN "SI2" THEN 7
        WHEN "I1" THEN 8
        WHEN "I2" THEN 9
        WHEN "I3" THEN 10
        ELSE -1
    END AS clarity_score,
    CASE cut
        WHEN "ideal" THEN 0
        WHEN "excellent" THEN 1
        WHEN "very good" THEN 2
        WHEN "good" THEN 3
        WHEN "fair" THEN …
Run Code Online (Sandbox Code Playgroud)

mysql sql select

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

Notepad ++没有调试功能或任何调试插件 - 这是真的吗?

对于那些在Notepad ++中编码的人,我只想确认Notepad ++没有任何内置的调试功能(即设置断点的能力,逐步执行并查看执行过程中的值).我是PHP编码的新手,我正在寻找一个好的编辑器/ IDE来使用.由于我想要一个调试功能,你的答案将极大地帮助我缩小选择范围.请注意,我最近下载并且实际上正在使用Notepad ++,并且似乎无法从Notepad ++菜单中找到内置调试器或调试插件.提前致谢.

php debugging notepad++

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

禁用UIView背景上的触摸,以便可以单击较低视图上的按钮

基本上,这是我的视图层次结构(如果这很难读,我会道歉......我是新来的,所以发布的建议很乐意接受)


--AppControls.xib
-------(UIView)ControlsView
-----------------(UIView)TopBar
------------- ---- -------------- btn1,btn2,btn3
----------------- UIView)BottomBar
------- ---------- -------------- slider1 btn1,btn2
--PageContent.xib
----------------- (UIView)ContentView
----------------- -------------- btn1,btn2,btn3
---------- ------- --------------(UIImageView)FullPageImage


我的情况是,我想隐藏和显示控件,当点击PageContent上的任何地方而不是按钮并且控件显示时,就像iPhone视频播放器一样.但是,当显示控件时,我仍然希望能够单击PageContent上的按钮.

除了最后一点,我完成了所有这些工作.当控件显示控件的背景时,接收触摸事件而不是下面的视图.在ControlsView上关闭用户交互会在其所有子节点上关闭它.

我已经尝试在我的ControlsView子类上重写HitTest,如下所示,我在类似的帖子中找到了:

- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event{
UIView *hitView = nil;
NSArray *subviews = [self subviews];
int subviewCount = [subviews count];
for (int subviewIndex = 0; !hitView && subviewIndex < subviewCount; subviewIndex++){
hitView = [[subviews objectAtIndex:subviewIndex] hitTest:point withEvent:event];
}   
return hitView;
}
Run Code Online (Sandbox Code Playgroud)

但是,此时我的滑块不起作用,大多数其他按钮也不起作用,事实上,事情开始变得怪异.

所以我的问题很简单:如何让视图的所有子视图都有触摸事件,而超级视图的背景是不可点击的,下面视图上的按钮可以接收触摸事件.

谢谢!

iphone objective-c

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

具有numpy数组的Pythonic垃圾收集如何附加和删除?

我正在尝试调整在计时器上更新的绘图代码(matplotlib)的基础结构,从使用绘图数据的Python列表到使用numpy数组.我希望能够尽可能地缩短绘图的时间步长,并且由于数据可能会达到数千个点,如果我不能,我会开始快速失去宝贵的时间.我知道numpy数组对于这类事情是首选,但我无法弄清楚何时需要像Python程序员一样思考,何时需要像C++程序员一样思考,以最大限度地提高内存访问效率.

它在scipy.org文档中说append()函数,它返回附加在一起的数组的副本.所有这些副本都能正确收集垃圾吗?例如:

import numpy as np

a = np.arange(10)
a = np.append(a,10)
print a
Run Code Online (Sandbox Code Playgroud)

这是我对C++级别的内容的阅读,但如果我知道我在说什么,我就不会问这个问题,所以如果我错了请纠正我!= P

首先分配10个整数的块,并且符号a指向该块的开头.然后分配一个包含11个整数的新块,总共使用21个整数(84个字节).然后将a指针移动到11-int块的开头.我的猜测是,这会导致垃圾收集算法将10-int块的引用计数减少到零并解除分配.这是正确的吗?如果没有,我如何确保在追加时不会产生开销?

我也不确定如何在使用它时正确删除numpy数组.我的图上有一个重置按钮,只是刷新所有数据并重新开始.当我有名单时,这是使用完成的del data[:].是否有numpy数组的等效函数?或者我应该只说data = np.array([])并指望垃圾收集器为我做的工作?

python arrays garbage-collection memory-management numpy

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

Excel的FREQUENCY功能如何工作?

具有以下功能:

=FREQUENCY(C2:C724,D2:D37)
Run Code Online (Sandbox Code Playgroud)

第二个参数是 BIN

我不明白的是,为什么Excel会增加BIN其余值.BIN不会改变!它保持不变.然而,当我为所有值粘贴公式时,它会这样做:

=FREQUENCY(C2:C724,D2:D37)
=FREQUENCY(C2:C724,D3:D38)
=FREQUENCY(C2:C724,D4:D39)
Run Code Online (Sandbox Code Playgroud)

最后一列是生成的(这是正确的,但它没有意义!!)

Etoh        bin
15.9        20        0
14.6        19        0
14.1        18        0
13.9        17        0
13.3        16        0
13.3        15        0
13.2        14        1
12.6        13        2
12.1        12        3
11.8        11        6
11.5        10        4
11.2         9        4
11           8        8
10.5         7       10
10.3         6       26
10.3         5       27
10.2         4       40
10.1         3       89
9.8          2      151
9.7          1      205
9.5          0      102
9.1         -1       17
8.9 …
Run Code Online (Sandbox Code Playgroud)

excel vba

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