在 .msg 文件中包含 c 文件(静脉)
Including c files in .msg files (Veins)
我正在尝试在 Veins 4.4 中实现 BSM。为了达到这个目的,我想导入我的 libasn,它们是 WaveShortMessage.msg 中的 C 文件(.c 和 .h),以便填充 BSM。
我尝试按如下方式导入它们:
#include "veins/asn/BasicSafetyMessage.h"
#include <veins/asn/BasicSafetyMessage.h>
3.
extern "C" {
#include "veins/asn/BasicSafetyMessage.h"
};
4.
#ifdef __cplusplus
extern "C" {
#endif
#include "veins/asn/BasicSafetyMessage.h"
#ifdef __cplusplus
}
#endif
但它不起作用。它总是 returns 一个错误。
你能建议正确的方法吗?非常感谢
在 OMNeT++
中的消息定义中使用 C 或 C++ 代码在 OMNeT++ Simulation Manual, chapter 6.5 中有详细描述。
您应该使用 cplusplus
关键字,BasicSafetyMessage.h
:
中的 C 代码示例
cplusplus {{
extern "C" {
#include "veins/asn/BasicSafetyMessage.h"
};
}}
我正在尝试在 Veins 4.4 中实现 BSM。为了达到这个目的,我想导入我的 libasn,它们是 WaveShortMessage.msg 中的 C 文件(.c 和 .h),以便填充 BSM。
我尝试按如下方式导入它们:
#include "veins/asn/BasicSafetyMessage.h"
#include <veins/asn/BasicSafetyMessage.h>
3.
extern "C" {
#include "veins/asn/BasicSafetyMessage.h"
};
4.
#ifdef __cplusplus
extern "C" {
#endif
#include "veins/asn/BasicSafetyMessage.h"
#ifdef __cplusplus
}
#endif
但它不起作用。它总是 returns 一个错误。
你能建议正确的方法吗?非常感谢
在 OMNeT++
中的消息定义中使用 C 或 C++ 代码在 OMNeT++ Simulation Manual, chapter 6.5 中有详细描述。
您应该使用 cplusplus
关键字,BasicSafetyMessage.h
:
cplusplus {{
extern "C" {
#include "veins/asn/BasicSafetyMessage.h"
};
}}