# cpp-addon-calculator **Repository Path**: ipfgao/cpp-addon-calculator ## Basic Information - **Project Name**: cpp-addon-calculator - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-02-05 - **Last Updated**: 2026-02-05 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # C++ Node.js 原生模块 - 两数加和计算器 这是一个使用C++实现的Node.js原生模块,提供高性能的两数加和计算功能。 ## 项目结构 ``` . ├── package.json # Node.js项目配置 ├── binding.gyp # node-gyp构建配置 ├── index.js # Node.js入口文件 ├── test.js # 测试文件 ├── README.md # 说明文档 └── src/ └── addon.cpp # C++源代码 ``` ## 环境要求 - Node.js (推荐 v20.18.3 或更高版本) - node-gyp - C++编译器: - macOS: Xcode Command Line Tools - Linux: gcc/g++ - Windows: Visual Studio Build Tools ## 安装步骤 1. 安装依赖: ```bash npm install ``` 2. 编译C++模块: ```bash npm run build ``` 或者直接运行 `npm install`,它会自动执行编译。 ## 使用方法 ```javascript const { add } = require('./index.js'); // 基本使用 console.log(add(5, 3)); // 输出: 8 console.log(add(10.5, 20.3)); // 输出: 30.8 console.log(add(-5, 8)); // 输出: 3 ``` ## 运行测试 ```bash npm run test ``` ## API说明 ### `add(a, b)` 计算两个数字的和。 **参数:** - `a` (number): 第一个数字 - `b` (number): 第二个数字 **返回值:** - (number): 两个数字的和 **错误处理:** - 如果参数数量不足,会抛出类型错误 - 如果参数不是数字类型,会抛出类型错误 ## 编译说明 项目使用 `node-gyp` 进行编译。编译后的模块文件位于 `build/Release/addon.node`。 如果需要重新编译,运行: ```bash npm run build ``` ## 在其他项目中使用 ### 方式一:作为本地npm包使用(推荐) 1. **使用npm link(开发时推荐)** 在当前项目目录执行: ```bash npm link ``` 在其他项目目录执行: ```bash npm link cpp-addon-calculator ``` 然后就可以在其他项目中使用了: ```javascript const { add } = require('cpp-addon-calculator'); console.log(add(5, 3)); // 输出: 8 ``` 2. **使用本地路径安装** (1)需要把“本项目全部目录文件”放到一个路径(比如 ../cpp-addon-calculator),让目标项目用 file: 指向它。最小拷贝集合必须包含: package.json binding.gyp index.js src/(含 src/addon.cpp) (2)在其他项目的 `package.json` 中添加: ```json { "dependencies": { "cpp-addon-calculator": "file:../path/to/cpp-addon-calculator" } } ``` 然后运行: ```bash npm install ``` ### 方式二:发布到npm仓库 1. **准备发布** ```bash npm login npm publish ``` 2. **在其他项目中安装** ```bash npm install cpp-addon-calculator ``` 使用方式: ```javascript const { add } = require('cpp-addon-calculator'); console.log(add(5, 3)); // 输出: 8 ``` ### 方式三:直接复制编译文件(不推荐) ⚠️ **注意**:这种方式有平台限制,编译后的 `.node` 文件只能在相同平台和Node.js版本上使用。 1. 复制以下文件到目标项目: - `build/Release/addon.node` - 编译后的原生模块 - `index.js` - Node.js入口文件 - `package.json` - 项目配置(可选) 2. 在目标项目中创建相同的目录结构,然后使用: ```javascript const { add } = require('./path/to/index.js'); ``` ### 重要提示 - **平台兼容性**:C++原生模块是平台相关的,编译后的 `.node` 文件只能在相同平台(macOS/Linux/Windows)和相同Node.js版本上使用 - **自动编译**:推荐使用方式一或方式二,这样其他项目在安装时会自动编译,确保兼容性 - **依赖要求**:使用该包的项目需要安装 `node-gyp` 和C++编译工具链 ## 注意事项 - 首次安装需要编译C++代码,可能需要几分钟时间 - 确保系统已安装C++编译工具链 - 在不同操作系统上编译可能需要不同的工具 - 编译后的 `.node` 文件是平台相关的,不能跨平台使用