用例是在脱机时在客户端存储应用程序数据.是否建议使用Web SQL数据库(Chrome和Safari支持,但不支持FF),或等待浏览器实现索引数据库API?
我有一个简单的程序,我在MinGW和Visual C++ 2008 Express中编译,并且都提供大于88200的输出文件.当我设置s = 0时,两个程序都按预期工作.我究竟做错了什么?
#include <fstream>
using namespace std;
int main(int argc, char *argv[])
{
int i;
short s;
fstream f;
f.open("test.raw", ios_base::out);
for(i = 0; i < 44100; i++)
{
s = i & 0xFFFF; // PROBLEM?
f.write(reinterpret_cast<const char *>(&s), sizeof(s));
}
f.close();
return 0;
}
Run Code Online (Sandbox Code Playgroud)
可能重复:
查找链接列表中是否存在没有两个指针的循环
如何确定链接列表是否只使用两个内存位置进行循环.
测试链表是否有循环的最佳算法
在准备面试时,我遇到了以下问题:
如何使用额外的空间复杂度O(1)来确定链接列表(任何类型)是否包含循环?您不能假设循环从第一个节点开始(当然,循环不必包含所有节点).
我找不到答案,虽然我觉得这很简单......
我试图确定哪个程序集包含特定的类.我不想在该程序集中创建一个类型的实例,但是想要这样的东西
namespace SomeAssembly
{
class SomeClass
{
}
}
Run Code Online (Sandbox Code Playgroud)
..和我想要的客户端代码:
Assembly containingAssembly = GetContainingAssembly(SomeClass)
Run Code Online (Sandbox Code Playgroud) 我有一个简单的java maven项目.执行时我的一个类需要从类路径加载xml配置文件.我不想在生成jar时打包这样的xml文件但是我想在conf子文件夹下的zip程序集中包含一个默认的xml文件,我也希望在单元测试中可以使用这个默认的xml来测试它.
在我看来,这个默认的xml有两个可能的位置:
src/main/resources/conf/default.xmlsrc/main/conf/default.xml两种解决方案都需要特殊的pom动作
在解决方案1中,我在构建期间将自动复制到目标文件夹,这意味着它在测试中可用,但我也在生产的jar中得到它,我不想要它.
在解决方案2中,我得到了我想要的jar(没有xml)但我手动必须将xml复制到目标文件夹以供测试.(我不想在测试类路径中添加src的子文件夹.我认为这是不好的做法).
问题:两者的最佳解决方案是什么?
- 如果正确为2,将其复制到目标文件夹的最佳方法是什么?
- 有没有比这两个更好,更常见的其他解决方案?
(我还阅读了应该在哪里放置Maven项目的应用程序配置文件?但我想从"约定优于配置"的角度来了解最"正确的解决方案",这个链接提供了一些配置类型的解决方案,但没有任何约定但也许没有一个,但我还是要问.所提供的解决方案还包括AntRun插件和appAssembler插件,我想知道我是否可以完成它们.)
我正在尝试构建一个新的java swing组件,我意识到我可能能够找到一个能够满足我在网络上所需要的东西,但这部分是我学习实现这一目标的练习.
我想建立一个代表甘特图的摇摆组件.它会很好(虽然对于人们能够与之交互并不是必不可少的(例如,滑动任务以调整时间)
感觉就像最好的方法是子类化JComponent,并覆盖PaintComponent()"绘制图片"应该是什么样子,而不是像尝试将所有东西都塞进自定义JTable.
我已经阅读了几本关于这个主题的书,并且还看了几个例子(最值得注意的是像JXGraph这样的东西) - 但我对一些事情感到好奇
我何时必须切换到使用UI代理,何时可以坚持只是在paintcomponent()中摆弄以呈现我想要的东西?
如果我想要其他摆动组件作为我的组件的子元素(例如我想在我的甘特图上的文本框)
提前谢谢了.
-高手
我不了解这种方式.Cast有效.我有一个明确的(虽然隐式也失败)演员定义,当我"定期"使用时似乎有效,但当我尝试使用.Cast时却没有.为什么?这是一些可编译的代码,用于演示我的问题.
public class Class1
{
public string prop1 { get; set; }
public int prop2 { get; set; }
public static explicit operator Class2(Class1 c1)
{
return new Class2() { prop1 = c1.prop1, prop2 = c1.prop2 };
}
}
public class Class2
{
public string prop1 { get; set; }
public int prop2 { get; set; }
}
void Main()
{
Class1[] c1 = new Class1[] { new Class1() {prop1 = "asdf",prop2 = 1}};
//works
Class2 c2 = (Class2)c1[0];
//doesn't …Run Code Online (Sandbox Code Playgroud) 我有一张桌子,Foo.我在Foo上运行查询以从Foo的子集中获取ID.然后我想运行一组更复杂的查询,但仅限于那些ID.有没有一种有效的方法来做到这一点?我能想到的最好的是创建一个查询,例如:
SELECT ... --complicated stuff
WHERE ... --more stuff
AND id IN (1, 2, 3, 9, 413, 4324, ..., 939393)
Run Code Online (Sandbox Code Playgroud)
也就是说,我构建了一个巨大的"IN"子句.这有效吗?有没有更有效的方法,或者是获取ID的初始查询加入的唯一方法?如果它有帮助,我使用SQLObject连接到PostgreSQL数据库,并且我可以访问执行查询的游标以获取所有ID.
更新:我应该提到更复杂的查询都要么依赖这些ID,要么创建更多ID以在其他查询中查找.如果我要做一个大型查询,我最终会一次加入六个表,这可能太慢了.
在很多C++ API(基于COM的那些)中为你创造了一些东西,指向构造对象的指针通常需要作为**指针(并且函数将为你构造和初始化)
您通常会看到以下签名:
HRESULT createAnObject( int howbig, Object **objectYouWantMeToInitialize ) ;
Run Code Online (Sandbox Code Playgroud)
- 但您很少看到新对象作为返回值传递.
除了想要查看错误代码的人,这是什么原因?是否更好地使用**模式而不是返回的指针来实现更简单的操作,例如:
wchar_t* getUnicode( const char* src ) ;
Run Code Online (Sandbox Code Playgroud)
或者这更好地写成:
void getUnicode( const char* src, wchar_t** dst ) ;
Run Code Online (Sandbox Code Playgroud)
我能想到的最重要的事情就是记住释放它,并且由于**某种原因,这种方式往往会提醒我,我也必须解除它.
我在MySQL数据库中有两个表,Locations和Tags,以及第三个表LocationsTagsAssoc,它们将两个表关联起来并将它们视为多对多关系.
表结构如下:
Locations
---------
ID int (Primary Key)
Name varchar(128)
LocationsTagsAssoc
------------------
ID int (Primary Key)
LocationID int (Foreign Key)
TagID int (Foreign Key)
Tags
----
ID int (Primary Key)
Name varchar(128)
Run Code Online (Sandbox Code Playgroud)
因此,每个位置都可以使用多个标记字进行标记,并且每个标记字都可以标记为多个位置.
我想要做的是只选择标有所有提供的标签名称的位置.例如:
我想要所有标有"树"和"秋千"的地点.应选择位置"公园",但不应选择位置"森林".
任何见解将不胜感激.谢谢!
c# ×2
c++ ×2
java ×2
browser ×1
casting ×1
components ×1
construction ×1
factory ×1
fstream ×1
html5 ×1
int ×1
linked-list ×1
linq ×1
maven ×1
maven-2 ×1
mysql ×1
offlineapps ×1
postgresql ×1
python ×1
short ×1
sql ×1
sqlobject ×1
swing ×1