zoukankan      html  css  js  c++  java
  • [VC++入门]搞了半天我终于知道C++那种头文件h和源文件cpp到底在搞什么

      很多人都是从C++转到C#,而我却正好相反,从C#去学C++。第一次看那个东西我就直接用VS建一个C++项目,但一进去就闷了,不知道怎么回事,更本看不懂里面的文件和文件之间到底有什么关系。今天终于弄明白了一点,h文件和cpp文件也就是说,在h文件中声明Declare,而在cpp文件中定义Define。要弄明白这个就只要把声明和定义搞懂就好了,但是还是不习惯通常用回车敲得做法,C++中的智能提示跟C#中的简直就是...

      “声明”向计算机介绍名字,它说,“这个名字是什么意思”。而“定义”为这个名字分配存储空间。无论涉及到变量时还是函数时含义都一样。无论在哪种情况下,编译器都在“定义”处分配存储空间。对于变量,编译器确定这个变量占多少存储单元,并在内存中产生存放它们的空间。对于函数,编译器产生代码,并为之分配存储空间。函数的存储空间中有一个由使用不带参数表或带地址操作符的函数名产生的指针。定义也可以是声明。如果该编译器还没有看到过名字A,程序员定义int A,则编译器马上为这个名字分配存储地址。声明常常使用于e x t e r n关键字。如果我们只是声明变量而不是定义它,则要求使用e x t e r n。对于函数声明, e x t e r n是可选的,不带函数体的函数名连同参数表或返回值,自动地作为一个声明。

     
    以上是我从<<C++编程思想>>里抄过来的,放在这边说不定下次那天忘了,呵呵,应为我很少需要用到这个,这有在做小软件时才会想起要学习C++,虽然C#也能做到,但是不是所有人都有装.NET的框架吗:)

  • 相关阅读:
    二、java 与 scala相互调用
    Gradle Tips#1-tasks
    Guice 学习(六)使用Provider注入服务( Provider Inject Service)
    C++第15周(春)项目3
    cocos2d-x3.2中怎样优化Cocos2d-X游戏的内存
    jqGrid源代码分析(一)
    OCP-1Z0-051-题目解析-第6题
    PHP连接sql server 2005环境配置
    【剑指offer】替换字符串中的空格
    android 推断Apk是否签名和 签名是否一致
  • 原文地址:https://www.cnblogs.com/xdotnet/p/cpp_declare_define.html
Copyright © 2011-2022 走看看