从C 如何执行C中的方法或访问结构
From C++ how to execute a method or access struct which is in C?
我需要将字符串值从C 传递到C库。您如何致电CppCallToC
或来自.cpp我如何访问struct rtmp_stream *stream;
?
c 文件:ui/window-basic-main.cpp:
void OBSBasic::Load(const char *file) {
//From C++ how to go to the C method?
CppCallToC();
}
c文件:插件/obsutputs/rtmp-stream.c:
static void CppCallToC() {
//https://github.com/jp9000/obs-studio/blob/master/libobs/util/dstr.h
//struct dstr path, key;
struct rtmp_stream *stream;
//dstr_printf(&stream->path, obs_path);
//dstr_printf(&stream->key, obs_key);
}
您的问题不是C vs c 问题。rtmp-stream.c中的所有功能均声明为静态,这意味着它们具有内部链接,并且无法从其他编译单元中调用。您只能通过在文件末尾定义并在opt-un-unputs.c声明的RTMP_OUTPUT_INFO结构间接访问这些函数,甚至该声明仅在该文件中可用。
。我对obs Studio一无所知,所以恐怕我无法帮助您。您必须跟踪obs_register_output(&rtmp_output_info)
中发生的事情。
相关文章:
- 通过方法访问结构
- 模板方法访问正向声明的类仅在没有此指针的情况下无法编译
- 类变量无法从类方法访问
- 为什么从静态方法访问非静态方法是糟糕的设计
- 子类是否也在 c++ 中继承私有数据成员?但通过超类的公共方法访问
- 如何从回调方法访问自定义类成员
- 使初始化变量可供多个属性初始化方法访问
- 从c++中的方法访问指向对象的专用指针数组
- C++如何通过回调方法访问成员变量
- "undefined reference"从静态方法访问的模板类的静态成员
- 如何从方法访问类成员
- 类静态方法访问其静态数据成员
- 从静态方法访问非静态成员的工作示例
- 类方法访问其数据成员
- 通过公共方法访问私有成员变量
- 为什么无法从模板方法访问此类自己的受保护成员?
- 通过非静态方法访问静态成员
- JNI保留对对象的全局引用,并使用其他JNI方法访问它.在多个JNI调用中保持C++对象的活动状态
- 如何让一个方法访问其他模板类实例的私有成员
- 方法访问C++中的对象实例化