我为我的GWT项目设置了hg用于版本控制,并希望完全排除war/modulename文件夹中生成的文件.
我宁愿不必对每个命令使用--exclude开关.是否有我可以用来定期排除目录的首选项文件?
在Effective C++(第3版)中,Scott Meyers在第31项中建议,除了经典的声明(.h)和定义(.cpp)文件之外,类应该具有前向声明包含文件(fwd.h),哪个类不需要完整定义可以使用,而不是向前声明自己.
我有点看到它的情况,但我真的不认为这是一个可行的选择...它似乎很难维持,相当矫枉过正,几乎没有必要.
但是,我可以看到它用于模板前向声明,它相当重.但对于简单的课程?这似乎很难维护,并且会创建一大堆几乎空的包含文件,这些文件只是用于非常小的目的......值得麻烦吗?
这是一个例子:
// Class.h
class Class
{
Class();
~Class();
};
// ClassFwd.h
class Class;
// Class.cpp
Class::Class()
{
}
Class::~Class()
{
}
Run Code Online (Sandbox Code Playgroud)
我的问题:
你们有什么感想?如果这是一个很好的做法?
注意我最感兴趣的是这个练习的论据,看看我是否错过了一些让我同意Scott Meyers的内容.
我已经在Android SDK上测试了我的应用程序,从1.5到2.2,我的活动中的摄像头代码工作正常.在2.1的设备上运行它也有效.但同样的应用程序无法与HTC Desire和Nexus One上的2.2兼容,应用程序崩溃.有什么想法可能会发生吗?
我正在使用import android.hardware.Camera; .
在onCreate里面我有这个:
preview = (SurfaceView) findViewById(R.id.preview);
previewHolder = preview.getHolder();
previewHolder.addCallback(surfaceCallback);
previewHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
Run Code Online (Sandbox Code Playgroud)
回调是
SurfaceHolder.Callback surfaceCallback = new SurfaceHolder.Callback() {
@Override
public void surfaceDestroyed(SurfaceHolder holder) {
camera.stopPreview();
camera.release();
camera = null;
}
@Override
public void surfaceCreated(SurfaceHolder holder) {
camera = Camera.open();
try {
camera.setPreviewDisplay(previewHolder);
} catch (Throwable t) {
Log.e(TAG, "Exception in setPreviewDisplay", t);
Toast.makeText(CameraActivity.this, t.getMessage(),
Toast.LENGTH_LONG).show();
}
}
@Override
public void surfaceChanged(SurfaceHolder holder, int format, int width,
int height) {
Camera.Parameters parameters = camera.getParameters(); …Run Code Online (Sandbox Code Playgroud) 我有一个页面,其中发生了很多ajax动作.我显示一个微调器来指示正在处理请求.
其中一些要求很长时间,其中一些要求很快.当响应迅速响起时,那些旋转器更像是一种麻烦而不是一种援助.
这就是我想要的.仅在提交请求后超过50毫秒时显示微调器.
这意味着当请求启动时,微调器开始计时.如果响应在50ms之前出现,则响应将使微调器隐藏.
但是,如果响应不是50ms,那么显示微调器.
是否有任何插件可以帮助我开始.
谢谢
我需要"密码保护"我的应用程序,但需要建议安全地存储密码的位置.
我打算怎么做:
第一次运行程序时,我将提示用户创建密码.密码将被盐化并在SHA-256中进行散列,然后存储在注册表或文件中.
问题:
如果我将散列密码存储在注册表或文件(或两者)中,那么有人只需删除注册表或文件中的密钥并提示创建新密码就太容易了...
如何安全地存储哈希密码以使其更难被删除?
我已经考虑过将它存储在注册表中,并创建一个带有隐藏和系统属性的文件,以便在删除注册表文件的情况下读取,但这看起来很愚蠢,因为它也可以很容易地删除.
//我希望我用正确的标签正确地发布了这个问题 - 我是新来的,所以请放心!;)
祝一切顺利
克里斯(Shamballa)
您好我在我的操作中生成一个excel文件,我将返回给用户.如何声明返回文件的操作?
我可以用ajax调用这个动作吗?
谢谢!
给出了LINQ to SQL .dbml文件中的两个类,具有以下特性.
Customer
CustomerId
FirstName
LastName
AddressId
Address
AddressId
Street
City
State
Zip
Run Code Online (Sandbox Code Playgroud)
您可以构造一个LINQ查询,如下所示.
using(var db = new MyDataContext())
{
results = db.Customers
.Where(c => c.LastName.BeginsWith("o"))
.Select(c => new
{
c.CustomerId,
MailingAddress = c.FirstName + " "
+ c.LastName
+ Environment.NewLine
+ c.Address.Street
+ Environment.NewLine
+ c.Address.City + ", "
+ c.Address.State + " "
+ c.Address.Zip
}).ToList();
}
Run Code Online (Sandbox Code Playgroud)
现在让我们说你想要解释邮件地址的逻辑.您可以实现的两种方法是向Customer类添加新属性,或创建扩展方法.
public static class CustomerExtensions
{
public static string GetMailingAddress(this Customer cust)
{
return cust.FirstName + " "
+ …Run Code Online (Sandbox Code Playgroud) 这是更有效/更好的代码.使用是对象,然后unbox如果它是那种类型的对象?或者使用try catch
WizardStep parentWizardStep;
try
{
parentWizardStep = (WizardStep)this.Parent;
}
catch
{
throw new Exception("Unable to cast parent control to this type.");
}
Run Code Online (Sandbox Code Playgroud)
或这个:
WizardStep parentWizardStep;
if(this.Parent is WizardStep)
{
parentWizardStep= (WizardStep)this.Parent;
}
else
{
throw new Exception("Unable to cast parent control to this type.");
}
Run Code Online (Sandbox Code Playgroud) 我有一个长期运行的CGI和超时错误的问题:
超时等待CGI脚本的输出
客户端是jQuery编程的表单.用户输入一些数据并接收分析已启动的消息.除了在分析数据时带有链接的电子邮件之外,用户不希望看到更多消息.那么,此时,与客户端的连接已关闭,对吧?
在服务器端,Perl CGI脚本获取数据并执行一些C程序(使用Perl的系统)来分析它们.此过程可能需要几秒钟到几小时,具体取决于输入的数据.
然后,相同的CGI程序解析结果并向用户发送一封电子邮件,其中包含指向结果网页的链接.
因为对于某些数据,CGI可以运行几个小时我收到错误消息.
我假设增加ScriptTimeout是一个坏主意.我甚至不确定mod_cgi是否已安装.
我该怎么做才能避免这个错误?
服务器:在Mac OS X中运行的Apache2.
我正在尝试编写一个交互式R脚本.例如:
try.R:
print("Entr some numbers. >",quote=F)
a = scan(what=double(0))
print a
q()
Run Code Online (Sandbox Code Playgroud)
现在,如果我在命令行上运行它
$ R --no-save < try.R
Run Code Online (Sandbox Code Playgroud)
它试图从try.R获取stdin,给出以下错误:
> print("Entr some numbers. >",quote=F)
[1] Entr some numbers. >
> a = scan(what=double(0))
1: print a
Error in scan(file, what, nmax, sep, dec, quote, skip, nlines, na.strings, :
scan() expected 'a real', got 'print'
Execution halted
Run Code Online (Sandbox Code Playgroud)
我尝试了其他一些方法,但它们都给出了错误.例如:
$ R CMD BATCH try.R
$ Rscript try.R
Run Code Online (Sandbox Code Playgroud)
那么如何编写一个可以从*nix shell命令行运行的R脚本,并且可以从用户那里获取交互式输入?