Sleep函数怎样用?

iris_福将 2006-05-07 03:16:06
各位高手,我想使用Sleep(1000)函数来模仿时间(每秒钟输入一个样本),但在编译时出了问题,[C++ Error] Unit1.cpp(2668): E2015 Ambiguity between '_fastcall Idglobal::Sleep(unsigned int)' and '__stdcall Sleep(unsigned long)',应该如何解决,先谢谢了!
...全文
558 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
wood542344 2006-10-26
  • 打赏
  • 举报
回复
恩,楼上的情况我也碰到过。。。
single68 2006-10-26
  • 打赏
  • 举报
回复
我也遇到过这个问题,在两个不同的窗体调用,第一次可以直接sleep(),但是,在第二个窗体里边的时候就出现了二义性的问题,后来直接::sleep()就可以了。
donwmufromdying 2006-10-17
  • 打赏
  • 举报
回复
Sleep(unsigned int)' and '__stdcall Sleep(unsigned long)'
这不都说明问题了吗?
最简单就是强制指定类,要么先定义int mss;
mss=2000;
Sleep(mss);
保准不错
BlueDeepOcean 2006-09-13
  • 打赏
  • 举报
回复
干吗那么麻烦呢〉完全可以利用Timer组件的Interval实现的嘛。
brightkang 2006-09-13
  • 打赏
  • 举报
回复
应该是在.h文件里面重复定义了,两种定义方法不一致造成的。可能是你装什么控件或include 某个.h文件造成的。我碰到过这种问题,找到一个干掉就好了。
jaffy 2006-09-12
  • 打赏
  • 举报
回复
哦,加了双::就可以了,霍霍,估计是哪个函数重名了.
jaffy 2006-09-12
  • 打赏
  • 举报
回复
完了,今天我也遇到这个问题了,看了以上大大们的回复,都不行.真是怪了,前几天还好好的,今天什么都没动,BCB重装过,就不行了.
jiangshx 2006-05-09
  • 打赏
  • 举报
回复
如果上面这些方法都不行,那真是没道理!
找到_fastcall Idglobal::Sleep(unsigned int)位置,干掉!
zyyoung 2006-05-08
  • 打赏
  • 举报
回复
没道理不通过
LngDotin 2006-05-08
  • 打赏
  • 举报
回复
#include <stdio.h> //加在这里
(HINSTANCE, HINSTANCE, LPSTR, int)
{
try
{
Application->Initialize();
Form2=new TForm2(Application);
Form2->Show();
Form2->Update();
Sleep(2000);//编译通过
Application->CreateForm(__classid(TForm1), &Form1);
Form2->Hide();
Form2->Free();
Application->Run();
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
return 0;
}
BlueDeepOcean 2006-05-08
  • 打赏
  • 举报
回复
对,按照楼上的也行。
pp616 2006-05-08
  • 打赏
  • 举报
回复
::Sleep(1000)就可以了
rudolf_he 2006-05-08
  • 打赏
  • 举报
回复
偶觉得应该
_fastcall Idglobal::MySleep(unsigned int)

来的直观点

哈哈
BlueDeepOcean 2006-05-08
  • 打赏
  • 举报
回复
上面的提示错误信息你看没看,明明说的就是定义的二义性嘛!
既然是定义的二义性,你就需要将提示中的第一个自定义函数去掉,或者将Sleep这个函数名改名。之后再在函数体里面定义等待时间,比如:

_fastcall Idglobal::Sleep(unsigned int)改为:
__fastcall Idglobal::Sleep_(unsigned int mTime)
{
Sleep(mTime);
}
alloutoflove 2006-05-08
  • 打赏
  • 举报
回复
试着用
::Sleep( 1000 )试一下.
iris_福将 2006-05-07
  • 打赏
  • 举报
回复
除了Sleep函数外,还有其它的等待函数可用吗?
iris_福将 2006-05-07
  • 打赏
  • 举报
回复
先谢谢了,Sleep(1000L);也不行。
fyhui 2006-05-07
  • 打赏
  • 举报
回复
Sleep(1000L);
iris_福将 2006-05-07
  • 打赏
  • 举报
回复
我在unit文件中有#include <stdio.h>,也不行。但我在Project中是可行的:WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)
{
try
{
Application->Initialize();
Form2=new TForm2(Application);
Form2->Show();
Form2->Update();
Sleep(2000);//编译通过
Application->CreateForm(__classid(TForm1), &Form1);
Form2->Hide();
Form2->Free();
Application->Run();
}
catch (Exception &exception)
{
Application->ShowException(&exception);
}
return 0;
}
不知是何原因?

LngDotin 2006-05-07
  • 打赏
  • 举报
回复
在unit文件中加上一句:#include <stdio.h>

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧