- 浏览: 500068 次
- 性别:
- 来自: 上海
-
最新评论
-
hypercube:
markin'
配置D语言编程环境 -
qiezi:
qiezi 写道yangyang_08 写道1 ...
我的编程语言学习经历 -
qiezi:
yangyang_08 写道1、现在如果做并发服务器,楼主选用 ...
我的编程语言学习经历 -
yangyang_08:
1、现在如果做并发服务器,楼主选用什么样的语言架构?2、lua ...
我的编程语言学习经历 -
dearplain:
我也是语言爱好者,不过我一直坚持使用c。
我的编程语言学习经历
文章列表
最近在使用RoR做项目,体会到了快速开发的乐趣,也遇到了一些困难,其中一个就是redirect_to。我遇到的一个问题是,当使用Ajax更新页面局部内容时,session内容已经过期,这时需要整个页面跳转到登录页面。直接调用redirect_to会使局部内容显示成登录页面,它是在HTTP头里写入重定向参数来实现的。在我这里的特殊情况下,正确的做法是让它执行一个包含在<script>标记中的脚本,在脚本中更改窗口location值来跳转。不过RoR中使用Ajax时,会根据:update参数来决定是使用Updater还是Request。如果使用Updater方式,则应返回一段纯脚本 ...
- 2006-05-20 02:33
- 浏览 2129
- 评论(0)
首先写一个简单的webservice:using System;using System.Web;using System.Web.Services;using System.Web.Services.Protocols;[WebService(Namespace = "http://tempuri.org/")][WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]public class Service : System.Web.Services.WebService{ [WebMethod] ...
- 2006-05-14 20:08
- 浏览 2189
- 评论(0)
rails 1.1以上版本提供了强大优雅的RJS,可能执行一个请求多个更新。有些时候我们并不需要请求服务器,只想在浏览器上执行某些脚本更新,但又想使用RJS。所以为RoR增加了这项功能。使用方法:<script language="javascript"><%= render :update do |page| page.define_action 'test_action' do page.call_script <<-EOS alert(params.comment.title); alert(params. ...
- 2006-05-12 23:41
- 浏览 2806
- 评论(0)
Caching模块用来实现caches_action/caches_page/fragment,普通用法没发现什么问题,问题在于使用下面的例子时,它不能缓存到正确的位置:class CacheController < ApplicationController caches_action :cache_one caches_page :cache_two #endclass TestController < ApplicationController def one render :inline => <<-EOSTest::one<b ...
- 2006-05-09 11:35
- 浏览 2223
- 评论(0)
[RoR] 简单的角色权限检查插件
- 博客分类:
- Ruby
代码比较简单:module ActionController #:nodoc: class CheckGroupError < ActionControllerError #:nodoc: attr_reader :group_name def initialize(group_name) @group_name = group_name end end class CheckRoleError < ActionControllerError #:nodoc: attr_reader :role_name def initial ...
- 2006-05-08 21:30
- 浏览 2184
- 评论(1)
Login Engine是非常好用的一个登录engine,不过也有个缺点,它把用户信息缓存在session里。如果用户每次修改完自己的资料,都把session更新的话,自然是不会有什么数据不同步的问题。不过试想这样一种情况:1、用户A登录;用户A的信息将保存在session[:user]里。2、管理员操作用户A,修改用户A的资料并保存。3、用户A刷新页面。
如果显示用户资料是从session[:user]读取的话,显然用户A看到的是老的资料。正确的做法是管理员修改用户资料以后,把用户session里的内容也更新,当然这个实施起来有些困难,目前看来无法由用户ID获得对应的session。 ...
- 2006-05-08 21:13
- 浏览 2392
- 评论(1)
矩阵就不用再解释了,写成泛型主要是为了几个方便:1、方便在栈上分配空间。由于维度在编译期已知,所以可以做到在栈上分配空间。当然如果这个对象是new出来的,自然是在堆上分配,这里说的是在栈上分配这个对象 ...
- 2006-04-13 13:52
- 浏览 2863
- 评论(0)
D语言里面,可以通过version(Windows)来兼容COM接口,不过对于__uuidof却没有相应实现。
原始COM接口定义类似这样(找个简单的):
[
local,
object,
uuid(594f31d0-7f19-11d0-b194-00a0c90dc8bf)
]
interface IRpcChannelBuffer2 : IRpcChannelBuffer
{
HRESULT GetProtocolVersion
(
[in,out] DWORD *pdwVersion
);
}
VC++中可通过__ ...
- 2006-04-11 14:26
- 浏览 4405
- 评论(0)
简单测试了一下,语法比ruby稍罗嗦一点,不过也算是很简洁了。在WINDOWS下执行,遇到个小BUG,grails.bat第4行:if "%GRAILS_HOME"=="" goto grailsHomeNotSet是错误的,改成if "%GRAILS_HOME%"=="" goto grailsHomeNotSet就可以了。后面也有点小问题,干脆在LINUX下测试。照着Quick Start做了一下,还算顺利,不过例子怎么只给了个list呢?怎么也得把create/update/delete给完成嘛。猜着写了 ...
- 2006-04-07 16:59
- 浏览 1722
- 评论(0)
周末抽空做了点小测试,根据http://blog.vckbase.com/jzhang/archive/2006/03/28/18807.html中m网友修改的算法,python版本中读取所有行以后就做一个排序,再去除重复项。这个算法在我的机器上执行时间是1735ms左右,属于python版本中最快的一个。D版本暂还没想到有更优化的做法,D在处理以char[]作key的关联数组时,判断方法是先判断hash,如果hash相等,则继续做字符串判断。它执行时间是1120ms左右。以D版本为基础,自己写了一个C++的Email类:class Email{private: string ...
- 2006-04-03 11:00
- 浏览 5887
- 评论(0)
实际上不是全面测试性能。应该这么说:使用一个你熟悉的语言,用它写出一个高效的版本(做下面那件事)。不小心读到一个帖子:http://blog.vckbase.com/jzhang/archive/2006/03/28/18807.html看到C++竟然被比下去了,自然不是很舒服,毕竟C++对于C并没有太大的性能上的降低,而python是C写的(指Cpython实现),自然不会高过C。(废话,C基本上接近汇编效率了)可惜C++又很难找出这么高效的实现,STL效率还是低了些(为什么?一直以为它很高效,用得比较放心)。最近一直比较关注D语言,于是用D语言来测试一下。代码如下: 1 import ...
- 2006-03-31 11:06
- 浏览 7987
- 评论(0)
标题:Proposal: Operator overloading without temporaries
作者:Don Clugston
正文:
Background: Operator overloading, in the form it exists in C++ and
currently in D, inherently results in sub-optimal code, because it
always results in unnecessary temporary objects being created.
For example,
X = A - ( ...
- 2006-03-28 10:31
- 浏览 1779
- 评论(0)
Itanium C++ ABI ($Revision: 1.86 $)http://www.codesourcery.com/cxx-abi/abi.htmlC++ ABI Summaryhttp://www.codesourcery.com/cxx-abi/C++ ABI for IA-64: Code and Implementation Exampleshttp://www.codesourcery.com/cxx-abi/abi-examples.htmlC++ Vtable Examplehttp://www.codesourcery.com/cxx-abi/cxx-vtable ...
- 2006-03-23 16:08
- 浏览 1651
- 评论(0)
不知道什么时候加入了“函数模板参数类型推导”和“类模板(改进型)”,文档中也是悄悄出现了。
函数模板参数类型推导:
template Square(T){ T Square(T t) { return t * t; }}
以前调用时必须显式实例化:
writefln("The square of %s is %s", 3, Square!(int)(3));现在可以使用自动推导了:writefln("The square of %s is %s", 3, Square(3)); // T is deduced to be int ...
- 2006-03-15 17:03
- 浏览 1621
- 评论(0)
从http://www.digitalmars.com/d/cpptod.html摘录
1、构造函数:
c++:
1 class Foo
2 {
3 Foo(int x);
4 };
d:
1 class Foo
2 {
3 this(int x) { }
4 }
2、基类初始化
c++:
1 class A { A() { } };
- 2006-03-14 12:10
- 浏览 2071
- 评论(0)