我在我的SDL程序中使用STL向量.它看起来像这样:vector <Bullet*> vec; 这使得一个向量可以包含指向Bullet对象的指针.当我运行我的程序时,我只使用一次添加一个项目:vec.push_back(new_bullet); (new_bullet是一个指向"新"Bullet对象的指针.然后在以下函数中我使用以下方法擦除对象:vec.erase(...); vec.size()显示正在推送和弹出项目.I运行Ubuntu 9.10和系统监视器显示我的程序内存使用量慢慢增加.是我的程序还是我对STL向量缺少的东西?
假设您有以下数字列表{3,6,10,9,13,16,19},不一定按此顺序排列.现在,不知道这是集合{3,6,10}的可能组合的集合,是否存在可用于有效地找到这些组合的任何编程语言的算法.基本上,我想从总集中恢复列表 - 其中包含所有数字.什么是有效的算法,如果已经存在,我不希望重新发明轮子?
对于赋值,我需要为我的C程序提供命令行参数.我之前使用argc/argv(在C++中)没有遇到麻烦,但我不确定C样式字符串是否会影响它的工作原理.这是我的主要开始:
int main(int argc, char *argv[]){
if(argc>1){
printf("0 is %s, 1 is %s\n",argv[0],argv[1]);
if(argv[1]=="-e"){
// Do some stuff with argv[2]
system("PAUSE");
}
else{
printf("Error: Incorrect usage - first argument must be -e");
return 0;
}
}
Run Code Online (Sandbox Code Playgroud)
所以我将我的程序称为"program.exe -e myargstuff"但是我得到了"Error:Incorrect Usage ..."输出,即使我的printf()告诉我argv [1]是"-e".请帮忙吗?谢谢!
是否有更复杂的语法写作方式?
gen = (i for i in xrange(10))
index = 5
for i, v in enumerate(gen):
if i is index:
return v
Run Code Online (Sandbox Code Playgroud)
生成器应该有一个gen[index]表达式,作为一个列表,但在功能上与上面的代码完全相同似乎是很自然的.
是否有API(最好是C#)来访问用MS Word公式编辑器创建的方程的对象模型?我正在寻找像图表对象这样的API来访问Excel中的图表属性.
任何帮助将非常感激.
有没有办法使用macrolet做词法闭包?我想要做的是使下面的宏成为一个本地递归帮助器,它调用每个组合上的函数而不是生成列表,因为它现在调用repl中的宏导致:
CL-USER> (combinations nil '(1 2 3) '(4 5 6))
((1 4) (1 5) (1 6) (2 4) (2 5) (2 6) (3 4) (3 5) (3 6))
Run Code Online (Sandbox Code Playgroud)
我想要的是一个宏,它接受一个函数和任意数量的列表,并导致嵌套循环调用每个组合上的函数.我是lisp的新手,这是我在'nif'克隆之外编写的第一个宏,所以任何建议都值得赞赏.
我试图将宏转换为宏中的宏,它接受一个函数并且'(nreverse(list,item,@ vars))'被替换为'(func(nreverse(list,item,@ vars)) ))''我得到错误说func是一个未定义的变量或函数.
这是原始功能:
(defmacro combinations (vars &rest lsts)
(with-gensyms (item)
`(loop for ,item in ,(car lsts) ,(if (null (cdr lsts)) 'collecting 'nconcing)
,(if (null (cdr lsts))
`(nreverse (list ,item ,@vars))
`(combinations (,item ,@vars) ,@(cdr lsts))))))
Run Code Online (Sandbox Code Playgroud)
这是我尝试使用macrolet并获得未定义的函数'func'错误.
(defmacro for-all-combonations (func &rest lst)
(macrolet ((for-all (vars &rest lsts)
(with-gensyms (item)
`(loop …Run Code Online (Sandbox Code Playgroud) 对于员工和下属 - 我想在一个查询中加载具有下属数量的员工.
public class Employee
{
public Name {get;set;}
public int NumberOfSubordinates {get;set;}
}
Run Code Online (Sandbox Code Playgroud)
生成的SQL应如下所示:
select e.name, (select count(*) from subordinate s where s.employee_id = e.id) NumberOfSubordinates
from employee e
group by e.name
order by NumberOfSubordinates desc
Run Code Online (Sandbox Code Playgroud) 在将它放入MySQL数据库之前,我是否可以使用Perl来清理输入?我不太了解正则表达式,所以在我自己完成功能之前,我想知道是否已经制作了一个.
我使用Java applet,它会给我产生不必要的声音.applet中的静音选项丢失,无法重写源代码.我想听听其他(非JVM)应用程序的声音.如何在不禁用此Java applet(或JVM)声音输出的情况下抑制它?
我使用的是Ubuntu 9.10,jre1.6.0_18和Mozilla FF 3.5.8.
更新: