我正在使用Delphi 2007包含所有补丁和更新.
我有一个文件,由两个不同的项目使用.在该文件中是一个过程,我将简化如下:
procedure MyProcedure;
const
UniqueValue: integer = 0;
begin
//some code
Inc(UniqueValue);
//some more code
end;
Run Code Online (Sandbox Code Playgroud)
Inc()命令应该失败,因为您无法分配常量.在一个项目中,我得到了一个错误(我将该项目称为"准确").在另一个项目中,我没有任何错误(我称之为"Bogus").我也没有收到任何警告.我无法弄清楚为什么编译器会通过这个错误的代码.
这是我在项目Bogus中尝试的内容:
1 - 引入一个明显的错误,比如在一行中键入"slkdjflskdjf"
结果:我收到一个错误,证明它确实正在尝试编译此文件.
2 - 删除.DCU,然后重建项目
结果:重新生成.DCU,再次证明项目真正编译了这个错误的代码.
有没有人想过为什么会发生这种行为?更具体地说,为什么它会出现在一个项目而不是另一个项目?是否有一些模糊的编译器选项允许分配常量?
最后一点说明:这两个项目都是从Delphi 5转换而来的.在Delphi 5下,代码类似,它们都编译得很好.
编辑:谢谢你的帮助.更改可分配的类型化常量指令后,我可以在两个项目中获得一致的行为.我今天学了些新东西...
我是rails的新手,并尝试进行一些重构(放置一个部分渲染器,列出app/views/shared中的标题)渲染器显示日期和标题.但是,渲染器的不同用户使用不同的日期.通过重构的一部分我有
title_date = list_titles.created_on
Run Code Online (Sandbox Code Playgroud)
对于我想要的渲染器的其他用户
title_date = list_titles.updated_on
Run Code Online (Sandbox Code Playgroud)
那么我可以使用我传递的字符串(使用:locals参数)吗?我知道在Python中我可以做到
date_wanted = 'created_on'
title_date = getattr(list_titles, date_wanted)
Run Code Online (Sandbox Code Playgroud)
但我无法弄明白如何在红宝石中做到这一点.(显然在rails中我会从调用部分渲染器的视图中传递date_wanted字符串.)
我正在为之工作的公司面临一些困难,我们的未来就是不确定的.在过去几年中,我们开发了一个构建社区应用程序和社交网络的框架.我们认为这一举措不应该完全丢失,并且可能对社区有用,所以我们决定开源.
我对这个过程有一些疑问:
我知道那些问题是非常开放的,没有简单的答案,但我想听听一些有类似经历的人的意见.
提前致谢 !
设计具有管理部分和面向公众的部分的Web应用程序.感觉就像有一个面向公众的控制器只是为了"索引"和"显示"有点多余.我读过的所有建议都建议使用admin的命名空间,这很好.我只是想知道我是否应该有一个带有附加动作的控制器,比如说"list_public"或类似的东西.
我是Rails的新手,所以也许我只关心什么都没有.我只是不喜欢让所有这些控制器,视图,同名的助手分散在我的项目目录中.
有人对此有任何见解吗?提前致谢.
我正在阅读的某个地方,当我因为内存警告不足而暂时放弃一个视图时会遇到内存问题(如果用户想要看到它就再次加载它),如果ViewController类没有在每个事情上做这样的事情这种观点的出路:
-(void)dealloc {
[myView release], myView = nil;
[myLabel release], myLabel = nil;
[super dealloc];
}
Run Code Online (Sandbox Code Playgroud)
我在这里很困惑,因为实际上我认为[myView release]也会做出nil-thing,说变量不再存在任何对象.为什么两次?还是我错过了什么?
假设我有一个包含一些图像的HTML/CSS页面,我想用Python生成一个来自该源的PDF - 可能吗?
我想知道如何在相对于另一个点旋转一个角度时计算出一个点的新坐标.
我有一个方块箭头,想要相对于箭头底部中间的一个角度旋转角度θ.
这是允许我在2个屏幕控件之间绘制多边形所必需的.我无法使用和旋转图像.
从我迄今为止所考虑的内容来看,进一步复杂化的是屏幕的起源位于左上角.
我正在尝试使用MVP模式,我遇到了一个设计问题.我正在开发一个具有多个UserControl的应用程序.UserControls本身彼此无关,只代表实际模型的子集.根据我的阅读,人们倾向于说每个视图应该使用一个Presenter.这似乎有道理,但如果我有30个UserControls,我真的想要30个演示者吗?另一方面,如果我有1个Presenter和1个View代表整个"应用程序"视图,那么我将拥有膨胀的View和Presenter界面.然后每个View都必须实现与它无关的方法.我的问题是,有没有更好的方法来处理多个UserControls,或者我应该为每个View创建一个Presenter?
我正在尝试使用Axis使用.NET 2.0 Web服务.我使用Eclipse WST插件生成了Web服务客户端,到目前为止似乎还可以.
这是预期的SOAP标头:
<soap:Header>
<Authentication xmlns="http://mc1.com.br/">
<User>string</User>
<Password>string</Password>
</Authentication>
</soap:Header>
Run Code Online (Sandbox Code Playgroud)
我没有找到任何有关如何从Axis客户端配置此标头的文档.当我使用Visual Studio C#Express 2008生成客户端时,它生成一个以Authentication两个String属性(User和Password)命名的类,并且所有客户端方法都接收此类的对象作为第一个参数,但Axis WS客户端不会发生这种情况.
如何在客户端调用中设置此标头?
既然我正在使用递归来计算数字的总和,我想做一些稍微不同的事情.以下是我的代码,它将数字1,2,3,4,5相加.如何修改我的代码以将数字1,2,3,4,5放入数组中,然后在递归方法中使用它?我尝试了很多不同的尝试,我显然错过了一些东西.我知道在递归方法中,我想使用数组的Length属性来控制它.
苏珊
static void Main(string[] args)
{
Console.WriteLine(Sum(5));
Console.Read();
}
static int Sum(int value)
{
if (value > 0)
{
return value + Sum(value - 1);
}
else
{
return 0;
}
}
Run Code Online (Sandbox Code Playgroud)