我相信我在很大程度上理解属性.我的问题是,如果我有一个实例变量的属性,并且我在我的实现文件中的方法中设置或检索它,我应该使用self.myProperty
还是只是myProperty
?我知道其中一个有效,但我看到了混合约定,有时代码直接访问变量,有时则通过属性访问变量.
这样做有技术原因吗?这只是公约/个人偏好吗?而且我不是指方法的参数名称与实例变量名称冲突的实例,这可能是使用该属性的一个原因(至少,在其他语言中,我不知道这个).我假设当一个人在实现中使用该属性时,他们想要利用他们声明属性的方式(即非原子,保留),所以例如在方法中,人们可以这样做:
self.myProperty = [someObject someAutoReleasedObject];
Run Code Online (Sandbox Code Playgroud)
代替:
myProperty = [[someObject someAutoReleasedObject] retain];
Run Code Online (Sandbox Code Playgroud)
这是什么原因?那么只有某些情况才能使用该物业吗?
我是Objective-C的新手,这是让我困惑的少数事情之一.到目前为止,我刚刚直接访问了实例变量,最可能的错误假设是,通过属性实际调用/发送方法/消息并增加了不必要的开销.我很确定我错了,但即使开销的差异可以忽略不计(如果有的话),为什么只要直接访问变量就可以选择加入?
我很确定我的想法是错的,这就是我在这里问的原因.
我box-shadow
最近添加了一个页面的一部分,以使其具有与Mac OS X应用程序相同的阴影边框效果.它看起来很棒,但我注意到在页面上上下滚动使它变得滞后.我通常只会在有令人讨厌的背景图像和大量图像和嵌入式视频的页面上看到这一点(咳嗽MySpace咳嗽).我最初决定使用盒子阴影,因为我认为它将消除使用图像的需要,这将消除任何滚动滞后的可能性.
我知道CSS3仍然是新的,但这是滞后的原因吗?阴影是软件渲染还是什么?当我将框阴影应用于较小的元素时,它根本不会滞后.我只是想知道是否有其他人经历过这个.
我刚刚在Stack Overflow首页上#content
使用Firebug 在div 上尝试了它,设置为:
-moz-box-shadow: 1px 1px 10px;
Run Code Online (Sandbox Code Playgroud)
之后我注意到了一些滚动滞后.我使用的是Firefox 3.5.
我的问题是,如果我想在页面的某个部分添加Mac OS X样式边框,那么使用此属性有哪些替代方法?
另外,有人知道是否可以将盒子阴影仅应用于元素的顶部,左侧和右侧而不是底部?我试过1px -1px 10px
但它仍然显示底部的阴影.如果我继续减小第二个偏移量,它最终会从底部移除阴影,但随后顶部阴影现在变得更暗更大.
是的,我看过关于盒子阴影的文章:
我熟悉计算机视觉(嗯,知道它),其中一个应用程序可以是图像识别,例如光学字符识别,我相信.然而,我更感兴趣的是"计算机监听",我刚学到的东西被认为是数字信号处理.
对信号处理最感兴趣的是音乐中的潜在应用.我记得不久之前我看到了一个应用程序的预览(抱歉,忘记了名字),它可以收听某人弹吉他的录音,并自动在时间线上用实际的音符/和弦绘制出来.使用该程序,用户可以移动它们甚至编辑它们.现在,显然这更复杂,但它是否涉及同样的事情?信号处理?我也对音乐可视化器和智能照明系统的可能应用感兴趣.
我的理解是,对MP3等压缩音频格式进行此处理不会产生与包含单独轨道的MIDI相同的结果(可能我误解了).PCM等未压缩格式会比MP3更好吗?我对声音处理一无所知,这正是我从目前读到的内容中推断的.
我已经看到这个问题有很好的答案和链接,涵盖了我的很多问题.但是,我发现的大多数链接都是理论上的,我确信这些链接都很有趣,鉴于我对这个主题的兴趣,我绝对值得一读.但我想知道是否有任何现有的库可以促进这一点,或者与该主题相关的文章,这些文章面向计算机科学/编程,可能还有示例代码.即使是开源声音/音乐可视化器或任何其他开源声音处理代码也会很棒.
对不起,如果我没有任何意义.就像我说的,我不知道我在说什么.
嘿,我允许通过https和http访问我的应用程序,一切正常,除非我使用任何_url
方法.如果我通过https访问使用此类方法的视图,则会将其作为https提供,但生成的URL使用http协议.我想知道这是否正常,或者是否有办法让它自动化.我希望rails会根据页面的访问方式自动生成相应的url.
如果没有办法解决这个问题,那么创建合适网址的最佳方法是什么?这会有用吗?
if request.ssl?
some_url(:protocol => "https")
else
some_url
end
Run Code Online (Sandbox Code Playgroud)
如果我能想出一种更自动化的方法,我更愿意这样做.也许如果rails url方法生成://somedomain.com/some/path
,那么我想它会自动适应正确的协议.
谢谢,我将不胜感激任何帮助.
我才意识到我误解了el
a 的属性Backbone.View
.基本上我的视图需要id
基于其模型属性的动态属性.我以为我的工作正常,因为我只是在我的模板中指定它:
<script type="text/template" id="item_template">
<li class="item" id="{{identifier}}">
<span class="name">{{name}}</span>
</li>
</script>
Run Code Online (Sandbox Code Playgroud)
但是,我意识到Backbone实际上正在做的是将这个编译的模板放到另一个元素中,div
默认情况下.我通过阅读文档了解到了更多相关信息,但我仍然对如何创建动态感到困惑id
.
最好是,我希望找到一种方法,使上面模板中的东西充当我el
,因为它已经拥有我想要的一切,但我不知道这是否可行.所以我想知道是否有一种方法来指定动态id
属性.
我尝试在initialize
方法中设置它,this.id = this.model.get('attr')
但它似乎没有任何影响,可能是因为此时已经太晚了.
我目前正在做的只是使用jQuery添加id
in render()
:
this.el.attr(id: this.model.get('identifier'));
Run Code Online (Sandbox Code Playgroud)
它有效,但当然,我只是想问是否有一种首选方法通过Backbone来实现.
现在虚幻开发工具包已经出来并且任何人都可以免费使用,我很高兴能够尝试一下.我的理解是编程是通过UnrealScript中的脚本完成的,我想知道你们中是否有人知道任何关于虚幻脚本或虚幻开发工具包的好文章,教程,书籍和参考资料.
是否有一个常见的Javascript/Coffeescript特定的成语我可以用来完成这个?主要是出于好奇.
我有两个数组,一个由所需的键组成,另一个由所需的值组成,我想将它合并到一个对象中.
keys = ['one', 'two', 'three']
values = ['a', 'b', 'c']
Run Code Online (Sandbox Code Playgroud) 嘿伙计们,我正在尝试useDelimiter
在它的Scanner
类上使用Java的方法来做一些简单的解析.基本上每行都是由"|"分隔的记录,例如:
2 | John Doe
3 | Jane Doe
4 | Jackie Chan
Run Code Online (Sandbox Code Playgroud)
该方法将正则表达式作为参数,以便与之匹配.有人可以请我提供匹配的正则表达式|
(两边用一个空格分隔的垂直条).
谢谢,我真的很感激!
嗨,我一直在阅读有关的node.js最近.我已经看过许多关于它如何真正伟大的文章,以及一些知名人士的文章.考虑到这个项目似乎有的惯性,以及我目前正在学习javascript和jQuery,该项目引起了我的注意.我得到很多人对此感到兴奋,但我不太明白其含义是什么.
我知道这是事件驱动和非阻塞所有这一切,但我感到困惑的是它的意图.
node.js是否意味着我们现在有了在服务器端运行Javascript的基础,以便以后可能会有人为node.js/Javascript创建Ruby on Rails或ASP.NET MVC等价物?也许那里已经有了Web框架,但如果是这样的话,我还没有听过炒作机器.
我希望我的问题很明确.
在C++ 14标准§5.1.2/ 12中,它显示了一个lambda表达式的示例,该表达式显然似乎能够引用到达范围的变量x
,即使:
x
"这是一个例子:
void f(int, const int (&)[2] = {}) { } // #1
void test() {
const int x = 17;
auto g = [](auto a) {
f(x); // OK: calls #1, does not capture x
};
}
Run Code Online (Sandbox Code Playgroud)
看它确实编译.它似乎取决于x
存在const
; 如果const
删除它,它不再编译因为人们期望的原因(捕获列表为空).即使我将参数设置为int
不再是通用lambda,也会发生这种情况.
x
即使捕获列表为空,lambda如何引用?这怎么可能同时显然没有捕获x
(如评论所说)?
我在这个问题上发现的最接近的事情就是其他人在评论中切实注意到这一点.
以下是标准中的完整部分5.1.2/12:
具有关联的capture-default的lambda表达式,它不显式捕获或具有自动存储持续时间的变量(这排除了任何已发现引用init-capture的关联非静态数据成员的id-expression),如果复合语句被称为隐式捕获 …
javascript ×3
node.js ×2
backbone.js ×1
c++ ×1
c++14 ×1
coffeescript ×1
conventions ×1
css ×1
css3 ×1
delimiter ×1
firefox ×1
http ×1
https ×1
java ×1
lambda ×1
macos ×1
objective-c ×1
parsing ×1
performance ×1
properties ×1
regex ×1
ssl ×1
unrealscript ×1