我正在构建一些输入检查器,需要具有整数和/或双精度的特定函数(例如'isPrime'应该仅适用于整数).
如果我使用enable_if它作为参数它完美地工作:
template <class T>
class check
{
public:
template< class U = T>
inline static U readVal(typename std::enable_if<std::is_same<U, int>::value >::type* = 0)
{
return BuffCheck.getInt();
}
template< class U = T>
inline static U readVal(typename std::enable_if<std::is_same<U, double>::value >::type* = 0)
{
return BuffCheck.getDouble();
}
};
Run Code Online (Sandbox Code Playgroud)
但如果我将它用作模板参数(如http://en.cppreference.com/w/cpp/types/enable_if所示)
template <class T>
class check
{
public:
template< class U = T, class = typename std::enable_if<std::is_same<U, int>::value>::type >
inline static U readVal()
{
return BuffCheck.getInt();
}
template< class U …Run Code Online (Sandbox Code Playgroud) 有没有用javascript或java编写的C语言解释器?
我不需要一个完整的解释器,但我需要能够一步一步地执行程序,并能够看到变量的值,堆栈......所有这些都在Web界面中.
这个想法是通过向他们展示程序的逐步执行来帮助C初学者.我们正在使用GWT来构建接口,因此如果Java中存在某些内容,我们应该能够使用它.
我可以修改它以满足我的需要,但如果我可以避免编写解析器/抽象语法树walker/stack操作...这将是伟大的.
要清楚,我不想模拟完整的C,因为有些程序可能非常棘手.
我指的是一个基本的操作,例如:表达式评估,矫揉造作,函数调用.
CI想要模拟将包含:变量,for,while,函数,数组,指针,数学函数.没有goto,字符串函数,ctypes.h,setjmp.h ...(至少目前为止).
这是一个原型:http://www.di.ens.fr/~fevrier/war/simu.html
在这个例子中,我们已经手动将C代码转换为javascript表示,但它是有限的(诸如a == 2 || a = 1未处理的表达式)并且仅限于手动转换的程序.
我们在远程服务器上处理了一个C编译器,因此我们可以检查代码是否正确(并且没有任何未定义的行为).解析/ AST构造也可以远程完成(所以任何语言),但AST步行需要在javascript中才能在客户端运行.
我最近继承了一个没有对象/模块/命名空间的大型PHP应用程序...只有很多包含函数的文件.
当然,有很多依赖项(和所有文件,几乎总是包括在内).
我正在寻找一种可以分析文件并生成依赖图的工具.然后,更容易检测独立文件/文件集并重新考虑整个事件.
到目前为止,我发现的最佳解决方案是编写CodeSniffer嗅探器以检测所有函数调用,然后使用它来生成图形.
它似乎对其他人有用,所以我确信工具已经存在.
你会推荐什么 ?
我正在运行一个教育网站,教孩子们(12-15岁).
因为他们并不都在解决方案的代码源中说英语,所以我们使用法语变量和函数名称.但是,我们计划将内容翻译成其他语言(德语,西班牙语,英语).为此,我想尽快翻译源代码.我们大多数都有C/C++代码.
我打算使用的解决方案:
是否已经有一些开源代码/项目可以做到这一点?(对于第1,2和4点)
如果没有,那么第一个中最困难的一点是:使用C/C++解析器构建一个语法树然后用它们的位置提取变量似乎是要走的路.你有其他想法吗?
谢谢你的任何建议.
编辑: 如评论中所述,我还需要处理注释,但只有少数几个:完整的解决方案已经用纯文本解释,然后我们用自解释的变量显示代码源/函数名称.源代码很少超过30/40行,如果您已经知道代码在做什么,那么好的名称必须使它在没有注释的情况下可以理解.
附加信息:对于感兴趣的人来说,网站是国际奥林匹克信息学和C/C++的培训平台(至少是编程竞赛所需的最低限度),12岁时学习并不困难.
我是OCaml模块的新手,我没有设法使用我自己的模块而没有结合"包含"和"打开".我试图将签名放在单独的.mli文件中,但没有成功.
下面我指出了一个最小的(不是)工作示例,我正在尝试编译
ocamlc -o main Robot.ml main.ml
Run Code Online (Sandbox Code Playgroud)
我需要做什么只需要使用"打开",或只使用"包含",但不能同时使用它们?
文件"Robot.ml":
module type RobotSignature =
sig
val top: unit -> unit
end
module Robot =
struct
let top () =
begin
Printf.printf "top\n"
end
(* Should not be visible from the 'main' *)
let dummy () =
begin
Printf.printf "dummy\n"
end
end
Run Code Online (Sandbox Code Playgroud)
文件"main.ml"(不工作):
open Robot;;
top();
Run Code Online (Sandbox Code Playgroud)
文件"main.ml"(工作):
include Robot;;
open Robot;;
top();
Run Code Online (Sandbox Code Playgroud) 我们将从自制框架切换到Symfony或Yii.从我们的观点来看,这两个框架的能力是相似的(即它们都有我们需要的东西).
我们的情况:php 5.2.9,中型网站(10.000唯一身份/天)但共享主机.
请不要回答"这个更好",最好是最近会使用这两个框架的人.
我在在线编辑器上使用AutoSave功能.
当用户离开页面(检测到unload或beforeunload事件)时,我发送一个AJAX请求(async = false)来保存数据.
我有时在Chrome浏览器中遇到问题,因为有一系列事件正在发生:
当然,由于用户已断开连接,因此无法处理"保存"请求.
有没有一种与所有浏览器兼容的方法,在页面实际更改之前等待AJAX调用的响应?
简单的问题.一个心灵的朋友写了类似于这个的代码(这只是为了解释你我的问题,它根本没有用......)
class Example{
private int[] tab = new int[10];
public Example() {
for(int i = 0 ; i < 10 ; i++)
tab[i] = (int)(Math.random()*100);
for(int i = 0 ; i < 10 ; i++)
System.out.println(tab[i]);
}
public static void main(String[] arg) {
Example ex = new Example();
}
}
Run Code Online (Sandbox Code Playgroud)
我告诉他他应该把new构造函数放在里面
class Example{
private int[] tab;
public Example() {
tab = new int[10];
...
}
Run Code Online (Sandbox Code Playgroud)
当他问我为什么时,我不知道该回答什么:除了"这样做更好"之外,我没有明确的争论.我学习它的方式,您可以使用基本类型(int,double ...)初始化变量,但对于数组,您应该在构造函数中执行它.
所以:
我不考虑元素数量可能变化的情况.它总是10
给定加权图(有向或无向)我需要找到具有最大权重的图的循环.
循环的权重是图的边缘权重的总和.
它可以是任何循环,而不仅仅是我们可以的基本循环
我可以尝试枚举图的所有周期,然后计算最大值,但总周期数可以非常大(如果图完成,那么第一个和最后一个相同的任何顶点序列都是一个周期).
您是否有任何想法找到最大重量循环而不计算所有循环?
如果您需要图表上的假设(例如正数权重),请表明它们.
在python 2.7中,通过使用
from __future__ import division, print_function
Run Code Online (Sandbox Code Playgroud)
我现在可以print(1/2)展示了 0.5.
但是有可能在python启动时自动导入吗?
我试图使用sitecustomize.py特殊模块,但inport仅在模块内部有效,而不在shell中.
我相信人们会问为什么我需要这个:向青少年教授Python我注意到整数划分对他们来说并不容易,所以我们决定切换到Python 3.然而,课程的要求之一就是能够plot函数和Matplotlib非常好,但仅对Python 2.7有效.
所以我的想法是使用自定义2.7安装...不完美但我没有更好的想法让Matplotlib和新的"自然"分区"1/2 = 0.5".
任何建议或者可能是在python 3.2上运行的Matplotlib替代方案?
c ×2
c++ ×2
graph ×2
php ×2
ajax ×1
algorithm ×1
c++11 ×1
codesniffer ×1
dependencies ×1
events ×1
frameworks ×1
g++ ×1
graph-theory ×1
gwt ×1
interpreter ×1
java ×1
javascript ×1
jquery ×1
localization ×1
matplotlib ×1
module ×1
new-operator ×1
ocaml ×1
python ×1
symfony ×1
symfony1 ×1
templates ×1
yii ×1