static关键字在c++与java中的不同

static关键字在c++与java中基本是类似的,无论是使用方法还是含义。但是有一点是不同的:

AltibaseIntf getInstance()
{
    static AltibaseIntf dbi;
    return dbi;
}

在java中,这样定义会在编译期报错,illegal modifier for parameter。这里只能用final修饰。
但是在c++中,这样是允许的,static放在函数内与函数外的区别在于,放在函数外能够让所有成员访问、操作,放在函数内则避免了这个问题。也就是说,c++不光能控制变量的存放内存区,还能控制变量的访问域;而java在后者来说是不行的。

你可能感兴趣的:(java,C++)