我怎么能有一个抽象枚举,或某种基本枚举?
在我的通用代码中,我想要一个枚举占位符MyRetems的概念,而不是将自己与具体的枚举联系起来.然后在我的每个项目中,我都会有一个具体的实现.
例如共同代码
public interface MyItems {
// Marker interface
}
Run Code Online (Sandbox Code Playgroud)
项目A.
public enum Items implements MyItems {
RED_CAR, BLUE_CAR, GREEN_CAR;
}
Run Code Online (Sandbox Code Playgroud)
项目B.
public enum Items implements MyItems {
BROWN_TREE, GREEN_TREE;
}
Run Code Online (Sandbox Code Playgroud)
这似乎有效,但在我的公共代码中,我不能在我的接口枚举上写一个循环,因为它不是枚举.在我的常用代码中,我想写
for (MyItems item : MyItems.values())
doSomething(item);
Run Code Online (Sandbox Code Playgroud)
但我不能,因为我的界面只是一个标记界面,它没有.values().
任何建议都非常感谢.我不知道我是否完全以错误的方式尝试.
我用mprotect()保护内存区域后第一次调用malloc()时出现了分段错误.这是一个代码片段,它为内存分配提供了保护:
#define PAGESIZE 4096
void* paalloc(int size){ // Allocates and aligns memory
int type_size = sizeof(double);
void* p;
p = malloc(type_size*size+PAGESIZE-1);
p = (void*)(((long) p + PAGESIZE-1) & ~(PAGESIZE-1));
return p;
}
void aprotect(int size, void* array){ // Protects memory after values are set
int type_size = sizeof(double);
if (mprotect(array, type_size*size, PROT_READ)) {
perror("Couldn't mprotect");
}
}
Run Code Online (Sandbox Code Playgroud)
我想使用mprotect来避免写入我的数组(这是预先计算的正弦/余弦值).这是一个愚蠢的想法吗?
我有以下要求:
大图像包含几个需要链接到其他页面的"热点".听起来很简单.我创建了一个简单的html页面,一个带有背景图像的div和使用CSS与图像精灵翻转的绝对定位链接.
但是,我现在已经看到了另一个图像,热点不是方形,而是不规则的形状.在一个示例中,它们类似于冲浪板.任何想法我如何获得链接只响应图像的实际边界框.还有一些情况,"热点"是平行四边形的,并且彼此相邻.
在这种情况下创建矩形图像只是无法达到所需的结果.
我认为图像映射可能是一种解决方案,但我希望首先探索所有替代方案.
希望这是有道理的.
有一些教程建议使用来自谷歌的jquery路径,例如:
<script type="text/javascript"
src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
Run Code Online (Sandbox Code Playgroud)
在我们的项目中使用是否安全?
我们不依赖,因为我们不确定它会在一年或更长时间后存在吗?
我之所以提出这个问题,是因为有些人支持这个问题.
我试图找出 JTS LineString.getLength() 返回哪个单元。
例如:
LineString foo = (initialize line string somehow)
foo.getLength() -> 7.025667228118838E-4
Run Code Online (Sandbox Code Playgroud)
这些是公里?,米?,英尺?
所以我知道如何导出文件@文件系统的某些修订(因为导出的所有重载都有路径)但我不想使用文件系统来方便访问.有没有办法将其重定向到字符串或什么?谢谢.
在下面的代码中,当我f->msg在main函数中打印时,数据打印正确.但是,如果我传入mystruct*f pthread_create并尝试打印出msg值,我会在receive_data函数的第二行出现分段错误.
typedef struct _mystruct{
char *msg;
} mystruct;
void *receive_data(void* vptr){
mystruct *f = (mystruct*)vptr;
printf("string is %s\n",mystruct->msg);
return NULL;
}
int main(){
mystruct *f = malloc(sizeof(mystruct));
f->msg = malloc(1000);
f->msg[0] = '\0';
strcpy(f->msg,"Hello World");
pthread_t worker;
printf("[%s]\n",f->msg);
// attr initialization is not shown
pthread_create(&worker,&attr,receive_data,&f);
}
Run Code Online (Sandbox Code Playgroud)
未显示pthread的其他初始化代码.
我该如何解决这个问题?
我在下面有一个函数来返回元音.但是我想只返回真值,我该怎么做?
(map #{\a \e \i \o \u} (seq (char-array "Hello"))) => (nil \e nil nil \o)
Run Code Online (Sandbox Code Playgroud) 我正在使用Redis' INCR为对象生成ID.然后使用ZADDID作为键添加对象.
我是否需要担心是否有多个连接执行同一个代码块?说后id:12,如果两个连接在同一时间连接,并添加都使用对象id:13,然后其中一人将失去.