这个问题的标题是一个确切的愚蠢,但这个问题的答案对我没有帮助.
我有一堆打包在静态库中的目标文件:
% g++ -std=c++98 -fpic -g -O1 -c -o foo.o foo.cpp
% g++ -std=c++98 -fpic -g -O1 -c -o bar.o bar.cpp
% ar -rc libsome.a foo.o bar.o
Run Code Online (Sandbox Code Playgroud)
我想从libsome.a生成libsome.so而不是目标文件,但是库真的是准系统:
% g++ -std=c++98 -fpic -g -O1 -shared -o libsome.so libsome.a
% nm -DC libsome.so
0000xxxx A _DYNAMIC
0000xxxx A _GLOBAL_OFFSET_TABLE_
w _Jv_RegisterClasses
0000xxxx A __bss_start
w __cxa_finalize
0000xxxx A _edata
0000xxxx A _end
0000xxxx T _fini
0000xxxx T _init
Run Code Online (Sandbox Code Playgroud)
静态库是好的,或者至少我完全能够将它链接到可执行文件并让它运行包含的功能.如果我从foo.o和bar.o创建libsome.so,一切都很好.
如果我在这样的数组上使用json_encode():
return json_encode(array( 'foo' => 'bar'));
Run Code Online (Sandbox Code Playgroud)
回报是:
{'foo' : 'bar'}
Run Code Online (Sandbox Code Playgroud)
密钥作为文字传递,这是我的脚本绊倒.我真正需要的是:
{ foo : 'bar' }
Run Code Online (Sandbox Code Playgroud)
json_encode是这样做还是我必须用一些丑陋的正则表达式来删除引号?
我有一个Flash项目,它有很多源文件.我有一个相当频繁使用的课程,称之为Jenine.我最近(也许,无情地)将Jenine从一个名称空间重新定位到另一个名称空间.我以为我们已经准备好了 - 我以为是时候了.新Jenine在各方面都做得更好 - 她已经失去了一些代码膨胀,她已经脱离了一些残余的阶级关系,她终于回到了她一直秘密知道的命名空间,这是她真实的那个曾经属于.她是她自己的一员.
不幸的是,Flash没有这个.也许它已经形成了一种依恋.也许它不希望 Jenine脱钩.无论哪种方式,它都坚持在其记忆中的旧的,完美的Jenine版本.它拒绝继续前进.它忽略了她的(函数)调用.它试图忘记她的新的公共界面.相反,它构建的每个Jenine实例始终是旧版本的副本,直到其类路径:
var jenineInstance:Jenine = new Jenine();
trace( getQualifiedClassName(jenineInstance));
// Should print: com.newnamespace.subspace::Jenine
// Prints: com.oldnamespace.subspace::Jenine
// Ah, young love!
Run Code Online (Sandbox Code Playgroud)
我们打了.我对自己所说或做过的一些事情并不感到骄傲.最后,在愤怒的高潮中,我完全删除了所有Jenine的引用.她完全被系统彻底清除了.我的光标落在"清空垃圾"菜单选项上,就像棺材的冷盖一样.
我认为Flash无法恢复.直到今天,它仍然依附于珍妮的记忆.她的旧的,不完美的定义仍然像我被遗弃的幽灵一样漂浮在我的项目中.每当我强迫Flash编译时,它仍然会将她的爱情插入到我的电影中,将她的定义融入其他生活课程中,就像一个小神社.我想知道他们是否能看到她.
Flash和我不再谈论了.我写了我的代码,它编译它.在镇上有一个名叫Summer的新女孩看起来几乎与Jenine完全相同,好像有人刚刚将她的源代码批发复制到一个新的类中,但Flash并没有表现出任何兴趣.大多数时候,当它认为我不看时,它只是在我的评论中徘徊并写下糟糕的诗歌.
我希望没有其他人有类似的经历,这只是一个奇怪的,痛苦的波纹在可怕的黑暗泻湖,即Flash代码库.如果你有一些侥幸的机会,或者你知道如何删除编译器正在使用的任何该死的缓存,请帮助.
IronRuby帮助网站上的这个页面讨论了能够"需要"一些众所周知的程序集,例如System.Windows.Forms,而不需要在这里完成' 啊 - 来吧 - 给我一个休息- 不能认真的 '强大的集会名称.
在文档中它说:
>>> require "System.Windows.Forms"
=> true
Run Code Online (Sandbox Code Playgroud)
但是当我尝试相同的'要求'时,我得到了这个:
>>> require "System.Windows.Forms"
IronRuby.Libraries:0:in 'require': no such file to load -- System.Windows.Forms (LoadError)
from :0:in 'Initialize##1'
Run Code Online (Sandbox Code Playgroud)
我可能做错了什么?这可能是一个设置问题吗?我无法在文档中看到这个"加载路径上的libs目录".文档错了吗?
谢谢.
我在C#.NET中编写了一个程序,需要在后台运行.我的意思是它应该有任何用户界面.既不是GUI也不是CLI.它也不是 windows service(因为它必须在用户登录后才能运行).
它应该只在后台运行.这类计划的例子是AdobeUpdater.exe,GoogleUpdater.exe等等.
你怎么样:
有一个sub回报sub
要么
将文本作为代码执行
在Perl?
另外,我如何拥有匿名函数存储状态?
阅读这篇关于Java并发的DZone文章我想知道是否有以下代码:
private volatile List list;
private final Lock lock = new ReentrantLock();
public void update(List newList) {
ImmutableList l = new ImmutableList().addAll(newList);
lock.lock();
list = l;
lock.unlock();
}
public List get() {
return list;
}
Run Code Online (Sandbox Code Playgroud)
相当于:
private volatile List list;
public void update(List newList) {
ImmutableList l = new ImmutableList().addAll(newList);
list = l;
}
public List get() {
return list;
}
Run Code Online (Sandbox Code Playgroud)
为简洁起见,省略了try {} finally {}块.我假设ImmutableList类是一个真正不可变的数据结构,它拥有自己的数据,例如google-collections库中提供的数据.由于列表变量是易变的,基本上正在进行的是即时复制,只是跳过使用锁是不安全的?
我有一个包含24个字符串的NSMutableArray.
如果用户接到电话或退出应用程序,我需要保存这些数据.
我一直在研究很多例子但由于某些原因似乎无法确定保存数据的最佳方法.
24个字符串对应24个按钮及其状态.单击按钮时,将显示该按钮标记的相应阵列信息(0 - 23).我需要保留的是,如果点击了10个按钮并显示了他们的数据,那么保留这些数据的最佳方式是什么/什么是什么,以便在应用程序启动时重新加载?
我想我需要存储:
按钮标记,按钮对应的数组值,
按钮状态(是否已单击,值是否显示)
我会在退出应用程序时存储这些数据,然后当应用程序再次启动时,我会确定这个存储的数据是否存在,如果这样填充数组并检查按钮状态以确定它是否已经显示,如果是,则设置因此.然后,当加载此文件时,我将删除存储的数据(如果以这种方式存储,则为.DAT文件).这样,如果用户正常退出,则在下次启动时,它将启动新游戏.
我已经看了几个例子,他们将数据存储到.DAT文件中,但实现这个问题......并且想知道这是否是最好的方法.
非常感谢任何帮助或想法.
地理...