const使用与否决定了程序能否运行,提示undefined reference to `show_polar(polar const*)'
函数和结构的关系
*/
#include<iostream>
#include<cmath>
using namespace std;
struct polar
{
double distance;
double angle;
} ;
struct rect
{
double x;
double y;
};
void rect_to_polar(const rect * xypos, polar * pda);//把结果直接放到pda这个指针指向的结构中
void show_polar(const polar * dapos);//加const是因为不想修改这个结构
int main()
{
rect rplace;
polar pplace;
cout << "enter the x and y values: ";
while(cin >> rplace.x >> rplace.y)
{
//结构的地址不像数组,结构的地址是需要&地址操作符获得的
rect_to_polar(&rplace, &pplace);
show_polar(&pplace);
cout << "next ot numbers(q to quit): ";//其实任意一个非数字的字符都可以退出
}
cout << "done" << endl;
return 0;
}
//因为把结果直接放到了指针pda指向的内存中,所以不用返回polar结构了
void rect_to_polar(const rect * xypos, polar * pda)
{
pda->distance = sqrt(xypos->x * xypos->x + xypos->y * xypos->y);
pda-> angle = atan2(xypos->y, xypos->x);
}
void show_polar(polar * dapos)
{
const double Rad_to_deg = 57.29577951;
cout << "distance = " << dapos->distance;
cout << ", angle = " << dapos->angle * Rad_to_deg;
cout << " degress" << endl;
}
这一个程序我准备是在一本书上看到的,我运行的时候,如果void show_polar(const polar * dapos);这一条语句不加const的话可以正常运行,但是如果加了const的话,就提示undefined reference to `show_polar(polar const*)',应该是提示我没有使用引用,请教为什么会出现这样子的情况呢?
相关推荐
chrome-headless-shell-win32-159.0.8132.0(Canary).zip
chrome-headless-shell-win32-159.0.8132.0(Canary).zip
惠普150 联想1821 1831 1831W定影清零,转印带清零
惠普150 联想1821 1831 1831W定影清零,转印带清零,报错不打印,通过清零软件可以清除。内附使用说明。
【电液伺服执行器与PI控制器】带有PI控制器的电液伺服执行器的模拟研究(Simulink仿真实现)
内容概要:本文围绕带有PI控制器的电液伺服执行器开展模拟研究,利用Simulink工具构建系统仿真模型,深入分析PI控制器在电液伺服系统中的控制性能与动态响应特性。研究内容涵盖系统建模、PI控制参数整定、仿真结果分析等关键环节,重点探讨PI控制器对系统稳定性、响应速度及抗干扰能力的优化作用,并通过仿真验证控制策略的有效性与实用性; 适合人群:具备自动控制原理、液压传动基础知识及Simulink仿真能力的自动化、机械电子、控制工程等相关专业的高校学生、研究生及工程技术人员; 使用场景及目标:①用于自动控制类课程的教学实验或课程设计,帮助学生深入理解电液伺服系统的工作原理与典型控制方法;②应用于工业高精度执行机构的控制器设计,为实际工程中的系统优化提供理论支撑与仿真验证手段; 阅读建议:文中提供的Simulink模型与仿真流程具备良好的可复现性,建议读者结合具体工况调整PI参数,进一步探究PID或其他先进控制算法的改进效果,以深化对控制系统设计的理解与应用能力。
FYZN PcbDesigner.App.1.0.18.12-win10.rar
打开与保存 常用格式直接读写:打开、编辑、保存 .PcbDoc(含设计规则、层叠等信息)也能打开看结构 原理图文档:打开 / 新建 .SchDoc,和 PCB 文档一起在左侧项目树里管理,双击节点即可重开 另存为通用 ASCII:原理图与 PCB 都能导出为 ASCII 格式,方便文本比对、脚本处理,或交给别的流程 底图参考:需要对着图描的时候,可以给每个图层各放一张参考底图,与文件分开存 JSON,迁移工程时能一起带走 最近文件:最近打开的文件列表里可以直接右键「打开文件位置」 win10版本
软件测试浏览器自动化测试3
内容概要:本文介绍了浏览器自动化测试的三种主流工具——Selenium、Playwright 和 Puppeteer,并重点展示了 Puppeteer 的一个最小可运行代码示例。文章指出,从选型角度看,2026年的技术共识是新项目应优先选择 Playwright,已有 Selenium 框架的项目无需主动替换,而 Puppeteer 更适用于仅针对 Chrome 浏览器且运行环境为 Node.js 的场景。文中提供的 Puppeteer 示例涵盖了启动浏览器、打开页面、设置视口、键盘操作、元素定位与点击等核心操作流程,体现了其作为“浏览器控制库”的定位。同时强调,Puppeteer 本身不包含测试运行器和断言功能,需结合 Jest 等测试框架才能完整实现自动化测试能力,这是它与 Playwright 和 Selenium 的本质区别。; 适合人群:具备一定前端或自动化测试基础,从事 Web 自动化测试相关工作的开发与测试人员,尤其是面临工具选型的技术决策者;; 使用场景及目标:①帮助开发者快速理解 Puppeteer 的基本使用方式及其在实际项目中的应用流程;②为团队在自动化测试工具选型时提供明确的技术方向建议,尤其是在新项目中评估 Playwright 与 Puppeteer 的适用边界;; 阅读建议:在学习本文时,建议结合实际编码环境运行示例代码,并进一步探索 Puppeteer 与 Jest 的集成方案,以构建完整的测试闭环;同时关注 Playwright 相对于 Puppeteer 的优势,如多浏览器支持和内置测试模型,以便做出更合理的工程决策。


