RT 能举个例子 最感激了
我要画图,编了个函数DDALIne()
void CTestVIew::DDALIne()
{
(代码省)
}
是直接把这段代码放到TestVIew.cpp后面吗? 是不是要对这个函数进行申明和定义呢?怎么操作?
VC++ 新建MFC中如何对 自己定义的成员函数进行申明和定义?
答案:4 悬赏:80
解决时间 2021-03-02 22:32
- 提问者网友:伪情浪人
- 2021-03-02 13:41
最佳答案
- 二级知识专家网友:一场云烟
- 2021-03-02 13:51
请参考C++基本语法相关内容。
全部回答
- 1楼网友:时光不老我们不分离
- 2021-03-02 16:53
①先说明一下rand,这个函数用来产生伪随机数。比如,产生1000的两个随机数,产生的两个一般上是不同的,但如果要产生80个100以内的随机数,仅用rand函数就不够。因为产生80个100以内的随机数,至少有两个数相等的概率太大了。
②srand函数,并不能使产生的随机数完全不同。你可以执行以下这串代码。
#include
#include
#include
int main()
{
srand((unsigned)time(null));
int t1,t2;
t1=(rand()%3)+1;
t2=(rand()%3)+1;
cout<
#include
#include
int main(void)
{
srand((unsigned)time(null));//播种子,随时间的不同播不同的种子,故每次产生的随机数都不相同,由于用到time,故需要头函数time.h
int t1,t2;
t1=(rand()%2)+1;
t2=(rand()%2)+1;
myd:if(t2==t1)t2=(rand()%2)+1;
if(t2==t1)t2=(rand()%2)+1;
cout<
#include
#include
int main(void)
{
srand((unsigned)time(null));//播种子,随时间的不同播不同的种子,故每次产生的随机数都不相同,由于用到time,故需要头函数time.h
int t1,t2;
bool error=true;
t1=(rand()%2)+1;
t2=(rand()%2)+1;
while(error)
{
if(t2==t1)t2=(rand()%2)+1;
if(t2==t1)
error=true;//由于上一个语句只是判断当t2=t1时,再产生一个随机数赋给t1,但有可能新产生的这个数还与t1相同,所以接下来还要进行判断
else
error=false;
}
cout<
#include
int main(void)
{
int seed;
int t1,t2;
bool error=true;
cin>>seed;//种子由用户输入,如果两次执行这串代码输入相同的种子,执行结果完全相同,否则执行结果不同(即使表面上相同,其实也是不同的执行结果)
srand(seed);
t1=(rand()%2)+1;
t2=(rand()%2)+1;
while(error)
{
if(t2==t1)t2=(rand()%2)+1;
if(t2==t1)
error=true;//由于上一个语句只是判断当t2=t1时,再产生一个随机数赋给t1,但有可能新产生的这个数还与t1相同,所以接下来还要进行判断
else
error=false;
}
cout<<"不同的随机数:"<
- 2楼网友:滚出爷的世界
- 2021-03-02 16:03
1.在ResourceView中选中要删除的对话框,按Delete键;
2.在FileView中删除对话框相关类文件(例如CMyDlg.h和CMyDlg.cpp),并删除所有引用(#include "MyDlg.h").
3.在程序代码中删除对话框相关类的对象及其操作
我可以帮助你,你先设置我最佳答案后,我百度Hii教你。
- 3楼网友:放肆的依賴
- 2021-03-02 15:00
VC++ 2008中可以运行的代码:
------------------------------------------------------
#pragma warning(disable:4786)
#include
#include
using namespace std;
#include
#include
using namespace std;
#include
using namespace std;
struct Data
{
string name;
int age;
string work;
double account;
}
int main()
{
//打开输入文件并测试是否成功
string inputfilename;
cout << "Enter inputfilename for output: " << endl;
cin >> inputfilename;
ifstream lastins( inputfilename.c_str(), ios::in );
if ( !lastins )
{
cerr<< "*** ERROR: Cannot open for input. "<
using namespace std;
struct Data
{
string name;
int age;
string work;
double account;
}
// 提取文本文件的数据,并返回结构数组
Data* MakeDataArray(string inputfilename, int Originallinecount );
--------------------------------------------------------------------------------------------
在CView.cpp中加入:(注:已经在出错的位置注上错误原因)
---------------------------------------------------------
#include
using std::ifstream;
#include
using namespace std;
// 提取文本文件的数据,并返回结构数组
Data* CView::MakeDataArray(string inputfilename, int Originallinecount ) //错误1:error C2143: 语法错误 : 缺少“;”(在“*”的前面)
//错误2:error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
{ //错误3: error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
//错误4:error C2556: “int *CView::MakeDataArray(std::string,int)”: 重载函数与“CView::Data *CView::MakeDataArray(std::string,int)”只是在返回类型上不同
//错误5: error C2371: “CView::MakeDataArray”: 重定义;
//打开输入文件并测试是否成功
ifstream lastins( inputfilename.c_str(), ios::in );
if ( !lastins )
{
MessageBox( _T( "ERROR: Can not open the file"));
}
//分配内存空间
Data* d = new Data[ Originallinecount ];
char middlestring[ 100 ];
//从文件中提取数据并放到自定义的结构数组中
if ( !lastins.eof() )
{
for ( int i = 0; i < Originallinecount; i++ )
{
lastins.get( middlestring, 100, '|' );
middlestring[ 99 ] = '\0';
d[ i ].name = middlestring;
lastins.ignore( 1, '|' );
......等等,均为数据提取
}
}
lastins.close();
return *d;
}
void CView::RenderScene(void)
{
Data* datum = MakeDataArray( inputfilename, Originallinecount ); //inputfilename是在控件中加入
//数据处理...
}
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
问题:2,如果换成引用又如何?
我将Data* CView::MakeDataArray(string inputfilename, int Originallinecount )
-----------------------------------------------------------------------------------
在 CView.h:改为:
-----------------------------------------
void MakeDataArray(string inputfilename, int Originallinecount, Data &dataRef )
----------------------------------------------------
在CView.cpp中:
-----------------------
void CView::MakeDataArray(string inputfilename, int Originallinecount, Data &dataRef )
{
//代码同上,只去除 “return *d;”而加上:
&dataRef = d; //错误1:error C2106: “=”: 左操作数必须为左值
}
void CView::RenderScene(void)
{
Data datum;
MakeDataArray( inputfilename, Originallinecount ); //inputfilename是在控件中加入
//数据处理...
}
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯