我最近一直在考虑从方法中返回的东西,我注意到当方法失败时我会返回4种不同的东西.
困扰我的是,我的代码在这方面不是很有用,所以我想询问你的"最佳实践".
因此,让我们设想一个采用Foo并返回Bar列表的方法:
public IList<Bar> Method(Foo something);
Run Code Online (Sandbox Code Playgroud)
或者保持更一般:
public IBar Method(IFoo something);
Run Code Online (Sandbox Code Playgroud)
问题是你在什么样的失败中返回什么.选项将是:
我真的很讨厌选项4,所以我大部分都倾向于听你何时使用其他3个选项以及为什么
我的插件必须写入eclipse控制台 - 为了测试目的,我简化了我的代码,所以我只有以下内容:
public void start(BundleContext context) throws Exception {
super.start(context);
plugin = this;
System.out.println("Tecomp Plugin is running");
MessageConsole myConsole = new MessageConsole("My Console", null);
//myConsole.activate();
ConsolePlugin.getDefault().getConsoleManager().addConsoles(new IConsole[]{ myConsole });
ConsolePlugin.getDefault().getConsoleManager().showConsoleView(myConsole);
final MessageConsoleStream stream = myConsole.newMessageStream();
stream.setActivateOnWrite(true);
stream.println("Hi there!");
stream.close();
}
Run Code Online (Sandbox Code Playgroud)
这是一个简单的插件,方法开始对扩展AbstractUIPlugin的类开始 - 它不是rcp应用程序.代码在运行时工作台内运行良好 - 一旦安装了插件,输出就会丢失.该插件的其余部分正常工作.
ConsolePlugin可能有问题吗?或者在运行时工作台和开发工作台中以不同方式处理流?
我尝试了两个 - 一个功能项目并直接将插件jar复制到eclipse目录 - 用于安装插件 - 两者的结果相同...
欢迎任何帮助,因为我现在已经解决了这个问题一段时间了......
此致,Kathi
它似乎不是控制台的问题...我提供了我自己的视图来打印输出,但虽然在plugin.xml中声明,安装插件后没有视图...这是我做的: - 使用ExportWizard将插件导出到jar-archive -copied这个存档到/ usr/share/eclipse/plugins -restarted eclipse
或者使用一个功能项目: - 使用ExportWizard导出包含我的插件的功能项目 - 从eclipse目录中删除上面的jar存档 - 安装了功能 - 重新启动eclipse
两个都没有说 - 安装插件我有什么问题吗?jar-archive是好的,我查了一下 - 这是最新版本.但不知何故,似乎eclipse仍在使用一些较旧的插件而没有我所做的更改
问候,卡蒂
我想知道在什么情况下我应该在我的文件中将应用程序初始化代码放入Application_Start()vs ?Init()Global.asax
两者之间的区别对我来说似乎并不是很明显,除了Application_start首先被调用之外Init().
到目前为止,我能找到的唯一真正的指针是IHttpModule只有一个Init()方法,所以如果我正在做的事情在某些时候可能更适合实现IHttpModule我应该使用Init()方法Global.asax,如果没有别的一致性.
在我的网站上,我使用jQuery来挂钩元素的事件,即超链接.由于这些超链接仅在当前页面上执行操作,并且不在任何地方引导,我一直在将"#"的href属性放在:
<a href="#">My Link</a>
Run Code Online (Sandbox Code Playgroud)
但是在某些浏览器中,这会导致页面从右向上滚动,这显然是不合需要的行为.我已尝试使用空白href值,或不包括一个,但鼠标悬停时鼠标不会更改为手形光标.
我该放什么?
我正在尝试为给定的用例为我的类定义一个常量BUFFER_LENGTH.
//1. Using preprocessor declaration
//#define BUFFER_LENGTH 12
//2.Global constant
//const int BUFFER_LENGTH = 12;
class MyRequest
{
public:
//3. Define an in-class constant
//static const int BUFFER_LENGTH = 12;
//4. Declare an enum constant
enum
{
BUFFER_LENGTH = 12
};
MyRequest()
{
strcpy(mBuffer, "TestString");
printf("Buffer: %s, BUFFER_LENGTH = %d",mBuffer, BUFFER_LENGTH);
}
private:
char mBuffer[BUFFER_LENGTH];
};
Run Code Online (Sandbox Code Playgroud)
我刚刚列出了可以为类定义常量的不同方法.
1. Using Preprocessor constant
2. Using Global constant
3. Using in-class constant
4. using an enum.
Run Code Online (Sandbox Code Playgroud)
其中,哪个是定义给定用例的常量的最佳方法?我更喜欢使用枚举常量而非其他方法.有没有其他更好的方法,我错过了.
谢谢,
为什么没有标准化的电子邮件正则表达式?我最近参与了一个项目,我们有一个hickup,电子邮件通过我们的电子邮件正则表达式,但在创建MailMessage对象时失败.一个小错误,但它有相当大的后果
- 在检查电子邮件地址是否正确时,MailMessage构造函数是否使用电子邮件正则表达式?
- 为什么有这么多不同版本的电子邮件正则表达式?
这是一个ASP.Net应用程序,我们使用System.Net.MailMessage对象
... 绝对没有?
它分别为ASP.NET WebForms和ASP.NET MVC填充了哪些部分?
你能以某种方式创建一个使用System.Web.Abstractions的ASP.NET*基础应用程序,以便它可以在两种ASP.NET Web应用程序中使用吗?
在这种情况下,他们是如何将System.Web.Abstractions中的类重新调整回ASP.NET WebForms的呢?
你不能从命名空间中新建对象,所以它不能用于模拟,可以吗?
更新:很抱歉没有明确我知道测试HttpContext和其他构建ASP.NET对象的问题.但无论如何,谢谢你的好解释.
你有任何书籍或网站的建议,可以教我数学符号.作为一名开发人员,我从事从.NET/SQL Server到Flash游戏的各种项目,我经常发现自己在互联网上引用文章作为指导.许多文章都包含数学公式,除非它们伴随着"简单的英语"解释,否则我通常很难将公式转换为代码.
我拥有互动多媒体学位,所以我没有正式的高等数学教育,但是,我发现数学太费力而无法弄清楚.
希望通过学习这种符号,我将能够通过实际能够更多地融入其中来进一步了解我的知识.
注意:请不要建议我回到学校,做一个更高的数学课程,虽然我知道这是最好的选择,但它根本不是一个选择.除此之外,欢迎任何和所有建议.
更新
以下是我最常编程的一些类型的事情.我不确定这些涵盖的数学领域.
希望这有助于添加一些上下文.
我遇到了以下算术问题.
但结果与正常的数学运算不同,为什么会这样呢?
double d1 = 1.000001;
double d2 = 0.000001;
Console.WriteLine((d1-d2)==1.0);
Run Code Online (Sandbox Code Playgroud)