VC中,用C++,我在一个代码文件中用define 了个常量A, 如何在另一个代码文件中用这个A, 有办法没啊

难道只有改成int 全局,再在另个文件做引用声明, DEFINE的话有办法吗

如果在.cpp或.c文件中define,则只能在该文件内使用。
如果在.h文件中define,则可以在其他文件中#include该.h文件,然后使用define的常量
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-02-17
除非你想在单个源文件中使用,不然应该把define放在头文件中,在需要宏定义的源文中包含这个头文件.
宏不像变量,不会像变量一样在链接阶段出现重复定义的问题,实际上宏仅仅是文件替换,在预处理阶段已经完成替换,编译器和链接器都不会看到任何宏.
第2个回答  2013-02-17
你新建一个头文件,就像你建立C++文件一样,就是那个C/C++Header file ,然后在那里面 define
在你需要的源文件里#include你写的那个 。h 文件就行了
第3个回答  2013-02-17
放到头文件里面define然后include这个头文件啊

VC中,用C++,我在一个代码文件中用define 了个常量A, 如何在另一个代码...
如果在.cpp或.c文件中define,则只能在该文件内使用。如果在.h文件中define,则可以在其他文件中#include该.h文件,然后使用define的常量

C++,如何在一个cpp文件里使用另一个cpp文件自定义的对象
2.cpp中要有#include “MUSIC.h”MUSIC.h文件中要使用条件编译让其不多次加载 比如:ifndef _NUSIC_H_define _NUSIC_H_...endif 最后看看m是不是你又定义了一个叫m的其他类型的变量

C++ 如何在一个cpp文件中引用另外一个cpp文件中的类对象
extern ClassName objectName;

c语言 define 怎么用的
sq=SQ(a+1); printf("sq=%d\\n",sq); return 0;}上例中第一行为宏定义,形参为y。程序第七行宏调用中实参为a+1,是一个表达式,在宏展开时,用a+1代换y,再用(y)*(y) 代换SQ,得到如下语句: sq=(a+1)*(a+1); 这与函数的调用是不同的,函数调用时要把实参表达式的值求出来再赋予形参。而宏代换...

C++中的文件引用问题#include...
一般的形式是:ifnedf A define A endif 可以一个cpp文件对应一个.h文件 .h文件中包括了你这个cpp文件需要对外使用的函数 其他cpp如果需要用你的cpp中的函数 直接引入你所写的h就可以了 引用的顺序 实际上是无所谓的 .h文件中特别要注意 只写声明 不要定义 所以 你对c1.h的写法 是有一定...

vscode如何进行跨文件的函数定义跳转?
ifndef A_H define A_H void functionA();endif \/\/ A_H 紧接着,创建实现文件,命名为 `a.c`。在这个文件中实现 `functionA` 函数的定义。例如:c \/\/ a.c void functionA() { \/\/ 实现代码 } 然后创建另一个实现文件,命名为 `b.c`。在 `b.c` 文件中,引入 `a.h` 头文件。

C++ 怎么定义一个全局函数,能够在一个工程的所有文件中使用!
解决方法是,在log.h头文件的最开始加上:ifndef __LOG_H__define __LOG_H__\/\/log.h头文件的全部代码 endif \/\/ __LOG_H__这样log.h头文件无论被引用多少次都只会被解析一次.另外要说的这不是纯c++编程,这种用法属于c与c++的混合编程。还有一个需要注意的点,在编译器编译函数的时候...

C语言中的#DEFINE在C++下是用什么代替的?
像简单的宏#define PI 3.14159等一般定义为常量const double PI = 3.14159;而像#define (x) (x+2)之类的宏,在C++中为了保证效率,一般使用内联函数来替代。

c++ 头文件中加入 #ifnodef #define #engif 有什么用
define:这个宏定义就是使用一个命名来替代另一个。比如#define age 5 那么,在程序中,填入age,在预编译的时候,编译器就会自动将age替换成5,注意,这个是直接替换,所以如果#define X 3+1,那么在程序中输入5*X,编译器就会将其替换成5*3+1,这种情况一般会这样定义#define X (3+1)ifdef...

C++中用#define遇到的问题
endif 这个经常用在,.h文件里,也就是说这个要写在你的class。h中,省略号是你写的.h声明代码,不是放在.Cpp的源文件中,这个形式一是为了防止头文件重定义造成错误而加的,另外可以节省一些编译开销,加快编译效率,注意每个头文件中define后面的 _CLASS_H_是不同的一般规范是文件名的大写,无严格...

相似回答