我有这样的哈希:
[
{
:lname => "Brown",
:email => "james@intuit.com",
:fname => "James"
},
{
:lname => nil,
:email => "brad@intuit.com",
:fname => nil
},
{
:lname => "Smith",
:email => "brad@intuit.com",
:fname => "Brad"
},
{
:lname => nil,
:email => "brad@intuit.com",
:fname => nil
},
{
:lname => "Smith",
:email => "brad@intuit.com",
:fname => "Brad"
},
{
:lname => nil,
:email => "brad@intuit.com",
:fname => nil
}
]
Run Code Online (Sandbox Code Playgroud)
我想学习如何删除记录是否重复.意思是,看看有几个"brad@intuit.com"如何删除重复的记录,意味着删除所有其他有电子邮件"brad@intuit.com"的人....将电子邮件作为密钥而不是其他字段?
正如我从测试中发现的那样,iPhone的malloc有16字节对齐.但我不确定它是保证还是巧合.
所以问题是:在iOS和Android(NDK)上使用malloc()时保证的内存对齐是什么?
所以,我把我的片段中的事件传递给了活动,所以如何让它成为轮流中的活动,通知片段B做某事.我想片段B在片段A点击列表项时填充自定义列表.因此,它将事件发送到活动,现在如何让活动调用片段B中的事件?
我正在用C99编写一个库,并且库的某些部分可以从使用宏/内联函数中获益.内联函数更适合我的库.
但是,非常具体地说我不想在外部公开这些内联函数.
一切似乎都有效,但当我链接到库以创建可执行文件时,我得到错误:"未定义引用`na_impl_gfx__draw'"
我已经将问题复制到一个最小的测试用例,它完全符合我的要求:
lib.h:
void somefunc();
Run Code Online (Sandbox Code Playgroud)
lib.c:
#include <stdio.h>
#include "lib.h"
inline void someinline(char *value);
void somefunc() {
someinline("Hi!");
}
inline void someinline(char *value) {
printf("%s\n", value);
}
Run Code Online (Sandbox Code Playgroud)
main.c中:
#include "lib.h"
int main(int argc, char *argv[]) {
somefunc();
}
Run Code Online (Sandbox Code Playgroud)
现在我们编译:
doug@Wulf:~/test$ gcc -c -std=c99 lib.c
doug@Wulf:~/test$ gcc -c -std=c99 main.c
doug@Wulf:~/test$ gcc -std=c99 lib.o main.o
lib.o: In function `somefunc':
lib.c:(.text+0xe): undefined reference to `someinline'
lib.c:(.text+0x1a): undefined reference to `someinline'
lib.c:(.text+0x26): undefined reference to `someinline'
collect2: ld returned 1 exit …Run Code Online (Sandbox Code Playgroud) 我是JSF 2的新手,因为我试图做一个自己熟悉的世界示例,我遇到了这个错误,我已经尝试了很长一段时间.
堆栈跟踪
om.sun.facelets.tag.TagException: /facelets/register/host/registerHostUser.xhtml @9,9 <h:head> Tag Library supports namespace: http://java.sun.com/jsf/html, but no tag was defined for name: head
at com.sun.facelets.compiler.CompilationManager.pushTag(CompilationManager.java:193)
at com.sun.facelets.compiler.SAXCompiler$CompilationHandler.startElement(SAXCompiler.java:194)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:501)
at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.startElement(XMLDTDValidator.java:767)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:400)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2755)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:511)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:808)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:119)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
at javax.xml.parsers.SAXParser.parse(SAXParser.java:395)
at javax.xml.parsers.SAXParser.parse(SAXParser.java:198)
at com.sun.facelets.compiler.SAXCompiler.doCompile(SAXCompiler.java:232)
at com.sun.facelets.compiler.Compiler.compile(Compiler.java:105)
at com.sun.facelets.impl.DefaultFaceletFactory.createFacelet(DefaultFaceletFactory.java:218)
at com.sun.facelets.impl.DefaultFaceletFactory.getFacelet(DefaultFaceletFactory.java:149)
at com.sun.facelets.impl.DefaultFaceletFactory.getFacelet(DefaultFaceletFactory.java:100)
at com.sun.facelets.FaceletViewHandler.buildView(FaceletViewHandler.java:517)
at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:567)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:121)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:410)
at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1534)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:281)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) …Run Code Online (Sandbox Code Playgroud) 我正在构建我的应用程序的快速部分,该应用程序会查看用户的关注者,并突出显示用户关注的人(朋友)所遵循的部分.
我想知道两件事:
有没有更有效的方法来做到这一点?似乎这样会影响Twitter的API限制,因为我需要检查每个用户朋友的朋友.
这将创建一个包含朋友ID和他们关注的关注者的词典列表.相反,dict会更好地作为跟随者ID然后跟随他们的朋友.提示?
码:
# Get followers and friends
followers = api.GetFollowerIDs()['ids']
friends = api.GetFriendIDs()['ids']
# Create list of followers user is not following
followers_not_friends = set(followers).difference(friends)
# Create list of which of user's followers are followed by which friends
followers_that_friends_follow = []
for f in friends:
ff = api.GetFriendIDs(f)['ids']
users = followers_not_friends.intersection(ff)
followers_that_friends_follow.append({'friend': f, 'users': users })
Run Code Online (Sandbox Code Playgroud) 我有代码在屏幕上,在单独的画布中生成一对相关的图形.我希望将这两个图像保存为单独的文件.但是当我使用相同的命令来保存它们时,一个正确保存,另一个保存为空白图像(仅背景颜色).
画布之间有一个区别:一个是简单的绘制,而另一个是在屏幕外关联的缓冲图像,因此我可以用鼠标拖动它.
设置此缓冲安排的代码是
public class VolCanvas extends Canvas
{
volCnv.createBufferStrategy(2);
offScreen = volCnv.getBufferStrategy();
if (offScreen != null) ofsg = (Graphics2D) offScreen.getDrawGraphics();
// carry out draw operations with ofsg
.
.
.
ofsg.dispose();
offscreen.show();
}
Run Code Online (Sandbox Code Playgroud)
然后在保存到文件之前,我通过该函数进行画布到图像转换
private BufferedImage canvasToImage(Canvas cnvs)
{
int w = cnvs.getWidth();
int h = cnvs.getHeight();
int type = BufferedImage.TYPE_INT_RGB;
BufferedImage image = new BufferedImage(w,h,type);
Graphics2D g2 = image.createGraphics();
cnvs.paint(g2);
g2.dispose();
return image;
}//canvasToImage
Run Code Online (Sandbox Code Playgroud)
最后,我在下面显示的ActiionListener中进行保存.
public class SaveChart implements ActionListener
{
public void actionPerformed(ActionEvent evt)
{
File outFile; …Run Code Online (Sandbox Code Playgroud) 我需要安装chrome扩展作为手动方式.所以我按照此页面https://developer.chrome.com/extensions/external_extensions.我用注册表安装chrome扩展.一切都很好.但问题是:扩展不能"记住任何东西".每次我关闭并打开chrome时,它都会再次安装(扩展显示一个欢迎页面),它从上次会话中保存的所有内容都已消失.如果我以正常方式安装它,则该问题不存在.所以无论如何都要解决它?
我只是想用来link_to打开一个弹出窗口.我尝试了一些但它不起作用:
<%= link_to 'Create a new company',
new_company_path,
:popup => ['create_company', 'height=600, width=600'] %> <br/>
Run Code Online (Sandbox Code Playgroud)
任何的想法?
谢谢!
我想使用LoadLibrary开发一个插件系统.
我的问题是:我希望我的功能需要一个const char*并且LoadLibrary需要一个LPCTSTR.
我有一个聪明的主意(LPCSTR)path,不断给我一个模块未找到错误.
目前的代码如下.如果我取消注释该widepath = L..行,它可以正常工作.我已经阅读了使用MFC的解决方案,但我不想使用MFC.
当前代码:
bool PluginLoader::Load(char *path)
{
path = "Release\\ExamplePlugin.dll";
LPCTSTR widepath = (LPCTSTR)path;
//widepath = L"Release\\ExamplePlugin.dll";
HMODULE handle = LoadLibrary(widepath);
if (handle == 0)
{
printf("Path: %s\n",widepath );
printf("Error code: %d\n", GetLastError());
return false;
}
int (*load_callback)() = (int (*)()) GetProcAddress(handle, "_plugin_start@0");
if (load_callback == 0)
{
return false;
}
return load_callback() == LOAD_SUCCESS;
}
Run Code Online (Sandbox Code Playgroud)