使用关键字类在C变量名++ [英] Use the keyword class as a variable name in C++

查看:143
本文介绍了使用关键字类在C变量名++的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个使用专为C文件的头文件的麻烦写C ++ code。特别是,头文件使用的变量名叫做类:

I am having trouble writing C++ code that uses a header file designed for a C file. In particular, the header file used a variable name called class:

int BPY_class_validate(const char *class_type, PyObject *class, PyObject *base_class, BPY_class_attr_check* class_attrs, PyObject **py_class_attrs);

这工作在C作为类是不作为关键字,但在C ++类。那么,有没有反正我可以#包括这个头文件到一个C ++文件,还是我的运气?

This works in C as class isn't taken as a keyword, but in C++, class is. So is there anyway I can #include this header file into a c++ file, or am I out of luck?

感谢您。

推荐答案

尝试是这样的:

#define class class_variable
// if class is only used in declarations, you can also do
// #define class
#include "c.h"
#undef class

这可能会造成问题,但也许值得一试。

it may cause problems, but maybe worth a shot

替代(用Makefile中):

alternative (using Makefile):

python_.hpp: /usr/include/python.h
    perl -pe 's/\Wclass\W//g' $< > $@
...

#include "python_.hpp"

这篇关于使用关键字类在C变量名++的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆