【C++学习】关于C++中定义和声明的区别

2人阅读 评论(0) 收藏 举报
分类:

声明:只是说明一个变量或者是一个类的结构,在声明的过程中,是不会为其分配空间的,编译器仅仅只对其进行词汇分析和名字的判定,不会占用任何内存。
定义:表示对于该对象而言是占用内存的,即在相对内存地址上进行对象定址。

1.对于变量和对象不加extern表示的是定义,否则是声明,也就是说使用关键字extern修饰的变量和对象是不占用内存的。
2.类是声明,但是类成员的函数体是定义。
3.函数只有函数头是声明,有函数体的都是定义。

#include <iostream>

using namespace std;

extern int a;
int main() {
    cout << a;
    return 0;
}

上述代码是错误的,显示对于a是未定义的引用。因此对于变量如果使用extern可以不进行内存分配。

查看评论

C++语言基础

-
  • 1970年01月01日 08:00

C++ 声明,定义与初始化的基本概念

对于变量:官方的解释:声明一个变量只是将变量名标识符的有关信息告诉编译器,使编译器“认识”该标识符,但声明不一定引起内存的分配。而定义变量意味着给变量分配内存空间,用于存放对应类型的数据,变量名就是对...
  • chaipp0607
  • chaipp0607
  • 2017-03-01 16:39:37
  • 2315

C++变量 声明、初始化、定义

1、命名空间的using声明 2、标准库类型string 3、标准k
  • littledouble
  • littledouble
  • 2014-10-14 21:03:05
  • 1731

C++变量的声明和定义 终于搞明白了

1.变量的定义:变量的定义用于为变量分配存储空间,还可以为变量指定初始值。在一个程序中,变量有且仅有一个定义。 2.变量的声明:用于向程序表明变量的类型和名字。程序中变量可以声明多次,但只能定义一次。...
  • hudfang
  • hudfang
  • 2014-12-18 09:39:07
  • 10676

c++中类的申明和定义

基本类型变量是声明和定义(初始化)是同时产生的,也就是说int a,那么同时对a进行声明和初始化。 而对象,是声明与定义分开的。如类A,如果A x;就是一个声明,告诉编译器x是一个A类的对象变量,但是...
  • guomutian911
  • guomutian911
  • 2015-10-17 09:14:32
  • 6383

定义、声明、初始化、赋值 小记(C++)

一、定义和声明①变量定义:用于为变量分配存储空间,还可为变量指定初始值。程序中,变量有且仅有一个定义。 ②变量声明:用于向程序表明变量的类型和名字。 ③定义也是声明:当定义变量时我们声明了它的类型...
  • cyuyanenen
  • cyuyanenen
  • 2016-06-08 16:24:43
  • 598

C++中变量的声明和定义的详解

1.概念:    变量的定义用于为变量分配存储空间,还可以为变量指定初始值。在一个程序中,变量有且仅有一个定义。    声明用于向程序表明变量的类型和名字。定义也是声明:当定义变量时我们声明了它的类型...
  • qq_28090573
  • qq_28090573
  • 2016-06-06 21:05:23
  • 1098

在C和C++下声明函数指针的方式

在C的规范下,声明一个函数指针的方式如下: //comm.h #ifndef COMM_H #define COMM_H void test_print(const char*); void(*co...
  • u013600225
  • u013600225
  • 2017-04-05 15:16:02
  • 981

C++定义一个对象和new一个对象的区别与联系

由于对C++的使用时断断续续的,所以今天拿起来看了,C++中一个最大的特色就是有了类的设计思想 基本后面的所有包括封装,多态,继承等都是基于类的思想完成的。 类到对象的过程就是实例化的过程,我经常...
  • raoqiang19911215
  • raoqiang19911215
  • 2016-04-30 16:24:48
  • 4872

C++中结构体的声明和定义

1  //定义一个结构体,类型为struct Student 2  stru...
  • whuslei
  • whuslei
  • 2010-06-11 22:54:00
  • 25642
    个人资料
    持之以恒
    等级:
    访问量: 3万+
    积分: 1212
    排名: 4万+
    博客专栏