zoukankan      html  css  js  c++  java
  • C++声明和定义是不同的(mooc)

    • 在C++ 中声明和定义要严格区分,不能在头文件里有定义。只能有声明。声明的方式如下
      extern  int  a;  // 用extern  声明变量
      int max(int, int); // 函数原型 声明函数
      //以及类和结构体的声明
    • 一个c++文件就是一个编译单元(c也一样)
    • 一个头文件中最好是只有一个类的声明。无论是C还是C++都不能include   .c or  .cpp文件,只能是include头文件(C++中也可以include不带后缀的文件比如iostream)头文件中只能有声明,不能有定义,头文件中要使用标准头文件结构(#ifndef...#define....#endif  这些)避免重复声明。
    • 在类中成员变量的声明不需要加extern。
      class  A 
      {
          private:
                int  num;  //这就是声明成员变量了,这个和全局变量声明不同,不需要加 extern
          public:
                int  b;
                void  func();  
      }
      
      // num的定义是在类的方法中使用的时候。因为声明是不分配内存的,编译器只是知道有这么个东西,但不知道在内存哪里。而定义就是告诉了编译器东西存在内存的哪里。
      
      A::func()     // 这是类的方法的定义
      {
           num = 6;
          cout << num << endl;
      }
      
      void  main()
      {
           A  a; //创建了一个A的对象
           a.func();  //调用了func方法
           a.b = 9;  // 成员变量b 是public,可以调用
           cout << a.b << endl;
      }
    • 类中的方法(或者叫函数)是属于类的,不属于对象。
  • 相关阅读:
    day63-webservice 03.解析cxf提供的例子
    day63-webservice 02.cxf环境搭建
    30个非常有趣的404错误页面设计欣赏
    30个非常有趣的404错误页面设计欣赏
    30个非常有趣的404错误页面设计欣赏
    JS一些常用的类库
    JS一些常用的类库
    JS一些常用的类库
    100+ 值得收藏的 Web 开发资源
    100+ 值得收藏的 Web 开发资源
  • 原文地址:https://www.cnblogs.com/bneglect/p/14655813.html
Copyright © 2011-2022 走看看