社区
C++ Builder
帖子详情
悬赏,求教BCB中加::问题
嘻嘻哈哈穷开心
2012-10-12 03:02:23
我是BCB菜鸟,最近刚开始学习,有一问题请教高手们
为什么有些函数会提示错误"Call of nonfunction",加入不加::则会运行成功.
多谢
如有满意答案,会加分
...全文
198
20
打赏
收藏
悬赏,求教BCB中加::问题
我是BCB菜鸟,最近刚开始学习,有一问题请教高手们 为什么有些函数会提示错误"Call of nonfunction",加入不加::则会运行成功. 多谢 如有满意答案,会加分
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
20 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
嘻嘻哈哈穷开心
2012-10-17
打赏
举报
回复
[Quote=引用 15 楼 的回复:]
void __fastcall TForm1::CopyFileClick(TObject *Sender)
跟这个CopyFile控件是不是有关?
[/Quote]
就是这个问题,已经修改过来了
嘻嘻哈哈穷开心
2012-10-17
打赏
举报
回复
[Quote=引用 17 楼 的回复:]
楼上所言极是。
楼主将这个控件(看起来象个按钮?)的名字命名为CopyFile,正好和Windows API提供的CopyFile同名。因此引起的冲突。所以我是建议给组件命名时使用前缀,如btnCopyFile,这样容易标识,并且一般不会重名。
[/Quote]
多谢多谢,就是这个问题,竟然没有注意,现在已经OK了
多谢妖哥
嘻嘻哈哈穷开心
2012-10-17
打赏
举报
回复
[Quote=引用 14 楼 的回复:]
Unit2.h文件中有什么内容?
[/Quote]
就是一个新的Form
ccrun.com
2012-10-16
打赏
举报
回复
Unit2.h文件中有什么内容?
嘻嘻哈哈穷开心
2012-10-16
打赏
举报
回复
[Quote=引用 12 楼 的回复:]
看不出什么问题,你的代码多吗?如果不涉及隐私,贴出来看看。
[/Quote]
不多,自己写着玩儿的,只是好奇为什么一直有问题
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "iostream.h"
#include <fstream>
#include "Unit1.h"
#include "Unit2.h"
#include <time.h>
#include <stdio.h>
#include "IniFiles.hpp"
#include <windows.h>
#include<Registry.hpp>
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
using namespace std;
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::CopyFileClick(TObject *Sender)
{
AnsiString asFlieName = ExtractFilePath(Application->ExeName)+ "bcmvars.nvm";
if ( !FileExists( asFlieName ) )
{
//ShowMessage("error");
MessageBox(NULL,"NO CONFIG FILE EXIST!!!","ERROR",MB_ICONERROR);
}
::CopyFile(asFlieName.c_str(),"C:\\WINDOWS\\system32\\drivers\\bcmvars.nvm",false);
Close();
}
其他控件的代码,跟这个无关,就这样的?为什么非要加::
ccrun.com
2012-10-16
打赏
举报
回复
楼上所言极是。
楼主将这个控件(看起来象个按钮?)的名字命名为CopyFile,正好和Windows API提供的CopyFile同名。因此引起的冲突。所以我是建议给组件命名时使用前缀,如btnCopyFile,这样容易标识,并且一般不会重名。
碧海情天-赵亮
2012-10-16
打赏
举报
回复
把CopyFile控件更名为copyFile看看。
碧海情天-赵亮
2012-10-16
打赏
举报
回复
void __fastcall TForm1::CopyFileClick(TObject *Sender)
跟这个CopyFile控件是不是有关?
ccrun.com
2012-10-15
打赏
举报
回复
看不出什么问题,你的代码多吗?如果不涉及隐私,贴出来看看。
嘻嘻哈哈穷开心
2012-10-15
打赏
举报
回复
[Quote=引用 10 楼 的回复:]
引用 7 楼 的回复:
只有一个using namespa,其他没有啦
using的什么namespace?那个名字空间中是否也有CopyFile的函数?
[/Quote]
using namespace std;
ccrun.com
2012-10-12
打赏
举报
回复
[Quote=引用 7 楼 的回复:]
只有一个using namespa,其他没有啦
[/Quote]
using的什么namespace?那个名字空间中是否也有CopyFile的函数?
嘻嘻哈哈穷开心
2012-10-12
打赏
举报
回复
[Quote=引用 8 楼 的回复:]
引用 5 楼 的回复:
CopyFile ,你在哪个代码里用,工程怎么建立的,这个是API,不会这么复杂啊
就是在BCB里使用的,包含过winbase.h之后,必须加::才能编译成功.为什么?
[/Quote]
还需要头文件,还有其他操作,才能用windows API函数么?
嘻嘻哈哈穷开心
2012-10-12
打赏
举报
回复
[Quote=引用 5 楼 的回复:]
CopyFile ,你在哪个代码里用,工程怎么建立的,这个是API,不会这么复杂啊
[/Quote]
就是在BCB里使用的,包含过winbase.h之后,必须加::才能编译成功.为什么?
嘻嘻哈哈穷开心
2012-10-12
打赏
举报
回复
[Quote=引用 6 楼 的回复:]
引用 4 楼 的回复:
嗯,是CopyFile 提示的是call of nonfunction
CopyFile是Windows API,在这个函数前面加::是可以的。你的工程中用到了什么名字空间?
[/Quote]
只有一个using namespa,其他没有啦
ccrun.com
2012-10-12
打赏
举报
回复
[Quote=引用 4 楼 的回复:]
嗯,是CopyFile 提示的是call of nonfunction
[/Quote]
CopyFile是Windows API,在这个函数前面加::是可以的。你的工程中用到了什么名字空间?
缘中人
2012-10-12
打赏
举报
回复
CopyFile ,你在哪个代码里用,工程怎么建立的,这个是API,不会这么复杂啊
嘻嘻哈哈穷开心
2012-10-12
打赏
举报
回复
[Quote=引用 3 楼 的回复:]
copyfile 注意大小写
[/Quote]
嗯,是CopyFile 提示的是call of nonfunction
缘中人
2012-10-12
打赏
举报
回复
copyfile 注意大小写
嘻嘻哈哈穷开心
2012-10-12
打赏
举报
回复
[Quote=引用 1 楼 的回复:]
::是表示域的操作符,对于Windows API来说,前面加::可以和VCL一些同名的函数区别出来。而VCL的函数光加::则是画蛇添足,如果不指明名字空间,就会起反作用。
[/Quote]
就比如用copyfile函数,右键find Declaration 可以找到这个函数,为什么不能直接用这个函数?
谢谢啊,我刚开始学习
ccrun.com
2012-10-12
打赏
举报
回复
::是表示域的操作符,对于Windows API来说,前面加::可以和VCL一些同名的函数区别出来。而VCL的函数光加::则是画蛇添足,如果不指明名字空间,就会起反作用。
Note-Station-to-markdown
这是一个跨平台脚本,可将 Synology Note Station 的笔记转换为 Markdown 文件。脚本使用 Python 编写,可在任何桌面平台上运行。 转换后您将获得: 1、以导出的笔记本命名的文件夹; 2、这些文件夹中以所有内联图片原位存储的 Markdown 语法纯文本文件笔记; 3、在笔记文本开头处分配标签和附件链接; 4、所有图片和附加文件都位于笔记本目录下的媒体子目录中。
区县-专精特新企业数量(2013-2025年).xlsx
详细介绍及样例数据:https://blog.csdn.net/li514006030/article/details/162965929
政府科技管理者如何通过区域科技创新数智大脑实现精准产业招商?.docx
科易网基于40亿+科创知识图谱数据库,深度探索AI技术在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,研究科技创新领域的AI+数智化解决方案,推动科技创新与产业创新智能化发展。
易语言源码读取天气预报-模块
易语言源码读取天气预报-模块
面向高精度电流控制的PMSM多参数PSO辨识模型研究(Simulink仿真实现)
内容概要:本文围绕“面向高精度电流控制的PMSM多参数PSO辨识模型研究”,系统阐述了基于Simulink的永磁同步电机(PMSM)多参数辨识方法,重点采用粒子群优化算法(PSO)实现对电机关键内部参数的高精度辨识。研究构建了完整的PMSM控制系统仿真模型,结合智能优化算法,解决了传统参数辨识中精度低、收敛慢的
问题
,有效提升了电流环控制的动态性能与稳态精度。该方法特别适用于对控制精度和响应速度要求较高的工业应用场景,如高性能伺服系统、电动汽车驱动系统等,具有较强的工程实用价值和科研参考意义。文中提供了完整的Simulink仿真模型与配套代码,确保了研究内容的可复现性和实践操作性。; 适合人群:具备电机控制、自动化或电气工程等相关专业背景,熟悉MATLAB/Simulink仿真环境,从事电机驱动系统研发、控制算法设计或相关领域科研工作的工程师及研究生,尤其适合工作1-5年、希望深入理解先进参数辨识技术的研发人员。; 使用场景及目标:①开展高精度PMSM控制系统的设计与参数辨识研究;②学习并掌握PSO等智能优化算法在电机系统参数辨识中的具体实现与调优技巧;③完成学术论文复现、科研项目验证、毕业设计或工程原型开发,提升对现代电机控制核心技术的理解与应用能力。; 阅读建议:建议读者结合提供的Simulink模型与源代码进行动手实践,按照文档逻辑逐步搭建与调试仿真系统,重点关注PSO算法与电机模型的交互机制、目标函数设计及参数收敛过程,通过对比不同工况下的辨识结果,深入理解算法性能与控制精度之间的内在联系。
C++ Builder
13,872
社区成员
102,696
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章