C++中类型名可以被重复定义吗

如题所述

如:
typedef double Money;
class Aount {
typedef long double Money;
Money bal;
//long double
};
温馨提示:内容为网友见解,仅供参考
无其他回答

编写多个cpp文件时,不是不能重复定义吗,那为什么像#inlude<iostream>可 ...
C语言,包括C++中不允许重复定义的。在包含文件(*h,也就是头文件)中使用了条件编译宏来防止重复定义。例如,假设一个项目中有三个文件:my.h s1.cpp s2.cpp 且s1.cpp和s2.cpp都使用了#include "my.h"。为了防止重复定义,在my.h中使用了以下宏 ifndef __MYH \/\/如果__MY符号没有定...

c++语言,请问class类型重定义要怎么解决呀?急
估计是你头文件重复包含了。定义头文件使用pragma once放在头文件第一句

C++题目,有大佬过来看看么 定义学生类。 (1)类名:STUDENT;
类的定义,是不能重复定义的,在同一个编译单元中,只能定义类一次。如果重复定义,会出错。同时类声明和类定义都是内部链接。只是为当前编译单元所用。因此,把类的定义,放在.h文件中,类的实现放在专门的cpp中。这样包含.h的其他cpp,就可以使用cpp中实现的函数。。同时注意:类的实现cpp文件的编译...

C++在两个 .h头里定义两次重复的类型 怎么解决?
这个得具体看两个结构是否完全一致,若有不一致的话,不能注释掉,否则会有问题 另外,若真出现这样的情况,使用结构时加上引用全名吧

C++中一个类名后面紧跟一个&,是什么意思
表示引用,引用和指针类似,但引用可以理解为同一个对象的不同命名,而且引用必须初始化,不能重复定义。还有引用不会分配空间

写了#pragmaonce 为什么会显示类被重定义?
pragmaonce 是 C++ 中的预处理指令,用于防止头文件被重复包含。如果您的类被重定义,可能是因为您的头文件中包含了该类的多个定义,或者您的项目中有多个源文件包含了该类的同一个定义。您可以尝试检查您的代码以找出问题所在。

C\/C++编程安全标准GJB-8114解读——声明定义类
R-1-1-2: 禁止将标识宏定义为关键字或基本类型,如不能将int64定义为长整型。R-1-1-5: #define的重复定义是不允许的,可能导致宏引用混淆。R-1-1-6: 函数中的#define和#undef必须配对使用,避免预编译错误。每个规则都有其重要性,如R-1-1-7强调结构、联合和枚举的标识名必须明确,以确保...

C++中的文件引用问题#include...
一般的 .h文件中 只放置类的声明 变量的声明 而且要加包含警戒 避免你在.h文件中定义了类 而导致重复包含 一般的形式是:ifnedf A define A endif 可以一个cpp文件对应一个.h文件 .h文件中包括了你这个cpp文件需要对外使用的函数 其他cpp如果需要用你的cpp中的函数 直接引入你所写的h就可以了...

c++问题,如果我对头文件进行多次包含会因为名字重复而出错吗?
会的,不过也看编译器,有的IDE会自助替换再编译 VS中则不行,比如下继承中;class A B:A 若C同时使用A B对象,则只用包含B的头文件即可

C++中, 两个函数调用可以用同一个函数定义吗?
可以重载函数,就是2该个函数具有相同的名字而形参表不同,比如,void print(int);void print(int,int);就是重载。函数重载和重复声明的区别,如果2个函数声明的返回类型和形参表完全相同,则第二个函数认为是第一个函数的重复声明。如果返回类型不同,形参表相同,认为第二个声明是错的。比如 ...

相似回答