c++扩展PHP手记(二)

上一章已经写了个简单的C++扩展,这章开始写一个多文件的扩展包括面向对象的使用

 

1,在上一章成功的基础上,在ext_bankie/下建一个hello.cpp hello.h文件用来编写C++方法

然后编辑hello.h 内容如下:

int hello_add(int a,int b);

保存退出

2,编辑hello.cpp 内容如下:

  7 extern "C"{
  8 #include "php.h"
  9 #include "php_ini.h"
 10 #include "ext/standard/info.h"
 11 }
 12 #include "hello.h"
 13 
 14 
 15 int hello_add(int a,int b){
 16  return a+b;
 17 }
~        


保存退出,

3,我们编辑完C++有关文件之后,要去config.m4里,把要用到的CPP文件注册到PHP_NEW_EXTENSION里,,如下所示:

     PHP_REQUIRE_CXX()
 58  PHP_ARG_ENABLE(ext_bankie, whether to enable ext_bankie support,
 59  Make sure that the comment is aligned:
 60  [  --enable-ext_bankie           Enable ext_bankie support])
 61 
 62  PHP_ADD_LIBRARY(stdc++, ?.€. EXTRA_LDFLAGS)
 63   PHP_NEW_EXTENSION(ext_bankie, ext_bankie.cpp hello.cpp, $ext_shared)
 64 fi

4,在ext_bankie.cpp里要使用hello_add的方法,所以编辑ext_bankie.cpp如下:

 PHP_FUNCTION(helloadd){
201         long int a, b;
202         long int result;
203         if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ll", &a, &b) == FAILURE) {
204                 return;
205         }
206         result= hello_add(a,b);
207         RETURN_LONG(result);
208 }


4,然后执行 configure命令,重新生成ext_bankie.so ,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
VSCode是一款功能强大的文本编辑器,通过安装C/C++扩展,我们可以在VSCode中进行C语言编程。在进行C语言编程时,常常需要引入头文件来使用各种函数和变量。那么如何配置VSCode的C扩展头文件呢? 首先,我们需要在VSCode中安装C/C++扩展。在VSCode的扩展面板搜索框中输入C/C++,找到相应的扩展并安装。安装完成后,重启VSCode使扩展生效。 接下来,我们需要为项目配置头文件路径。打开需要进行C语言编程的项目文件夹,在文件夹中新建一个名为".vscode"的文件夹,然后在该文件夹下创建名为"c_cpp_properties.json"的文件。 在"c_cpp_properties.json"文件中,我们需要配置includePaths字段来指定头文件路径。我们可以使用绝对路径或者相对路径进行配置。例如,如果我们的头文件放在项目文件夹下的"include"文件夹中,那么我们可以这样配置: { "configurations": [ { "name": "Win32", "includePath": [ "${workspaceFolder}/**", "${workspaceFolder}/include" ], "defines": [ "_DEBUG", "UNICODE", "_UNICODE" ] } ], "version": 4 } 在以上配置中,"${workspaceFolder}/**"表示包含项目文件夹中的所有文件,"${workspaceFolder}/include"表示包含项目文件夹中的"include"文件夹。 完成以上配置后,保存文件并重新加载VSCode窗口。现在,我们就可以在C语言代码中直接引入所需的头文件,并使用其中的函数和变量了。 通过以上步骤,我们可以很方便地在VSCode中配置C/C++扩展的头文件路径,实现更加高效的C语言编程。同时,我们还可以根据实际需求配置更多的选项,以满足不同的项目需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值