c - C中的标称类型检查
问题描述
C/C++ 中的类型检查是结构性的:重要的是,当所有typedef
(其名称确实具有误导性)都已解决时,表示的类型是相同的。
然而我有这个程序使用许多list
s (of void*
),许多int
s 涵盖不同类型的对象,我非常希望typedef
它的列表 ( typedef list foo_list
, typedef list bar_list
) 和它int
的 s ( typedef int orange_number
, typedef int apple_number
) 有好的 s。但是很容易弄错。
我不想使用“强类型定义”,只是在使用类型别名时保持一致。
是否有任何编译器具有警告以抱怨类型名称不一致?orange_number
当我混合和时抱怨的东西apple_number
,但不是orange_number
和int
。有什么可以阻止这样的警告吗?
解决方案
推荐阅读
- talend - 是否可以在 Talend Open Studio 独立作业中提示我输入文件名?
- android - 片段导入类型
- java - 比较javers中子类和父类的对象
- java - 如何为 Spring REST 控制器设置多个基本路径(例如,一个或多个包的公共基本路径)
- javascript - 为同一页面上的每个重复类运行函数
- c# - 在单个数据库上具有多个 DbContext 的 EF Core 迁移
- pyspark - pyspark:将结构分解成列
- ios - 有没有特定的方法来收听 PDFDocument 或 PDFView url 加载的完成情况?
- bluetooth-lowenergy - RxAndroidBle 等待客户端响应
- javascript - 通过 axios 请求传递图像