c++与Java中的变量和常量
实际上这正是C++和Java的一个重要不同之处。C++编译器不对本地变量进行初始化检验,所以在C++中很容易忘记初始化一个变量,这种情况下,变量的值该变量所占内存区域中刚好当前存在随机值。这显然是很容易产生程序出错的地方。
与Java一样, C++中类可以有数据域和静态变量。不同的是,C++中变量可以在函数甚至是类的外面定义,这些所谓的全局变量可以在程序的任何函数中被访问,因而不易被很好的管理。所C++中应该尽量避免使用全局变量。
在C++中,常量可以在任何地方被定义(记得在Java中,常量必须是类的静态数据static data)。 C++ 使用关键字 const 来定义常量,而Java中是 final。例如:
const int DAYS_PER_YEAR = 365;
C++ 中对类的定义与Java有些不同,这里是一个例子:一个C++ 版本的 Point 类:
class Point /* C++ */
{
public:
Point();
Point(double xval, double yval);
void move(double dx, double dy);
double getX() const;
double getY() const;
private:
double x;
double y;
};
这里几点重要的不同是:
1. C++的类定义中分为公共和私有部分,分别以关键字 public 和 private开始。而在Java中,每一个元素都必须标明 public 或 private。
2. C++中类的定义只包含函数的声明,真正的实现另外单独列出。
3. 访问函数(accessor methods)标有关键字 const ,表明这个函数不会改变本对象的元素值。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。