C++问题:
我有以下几个问题,分我有很多,都没怎么用过,请高手帮我回答:满意我会加分100-200我都可以给的:谢谢1.请能用C++写小游戏的那种境界的朋友或是有一定境界的朋友,帮谈...
我有以下几个问题,分我有很多,都没怎么用过,请高手帮我回答:满意我会加分100-200我都可以给的:谢谢
1.请能用C++写小游戏的那种境界的朋友或是有一定境界的朋友,帮谈下C++的学习和应用和思考方式方面的心德?
2.请问,我现在已学了C++的一些概念方面的东西了,(函数啊,指针啊,循环语句啊,虚函数啊,数组啊,继承啊,这些我全部学过了,)下一步向哪深入?好的学习顺序请帮赐教下?
3.比如看到一个这样的问题,调查肇事司机的车牌号的程序,条件一,四位数,前两个相同,条件二后两个相同,但不同于前两个,条件三,这个四位数刚好是一个数的平方
用以上三个条件求出这个车牌号?C++ 这个的思考思路?和要使用哪些函数可以实现?有C++代码带注释最好,最主要的是请帮在前面写上思考思路?
4.比如有些头文件,iostream, cmath....这些里面有什么函数的这些文件名在哪去查?我现在就只用过 iostream, string还有其它的在哪看?还有一些函数名用途()里的参数书写格式,哪可以查到?
5.请帮给出一段,你觉得你写的最得意的代码?如果加注释最好,(以便我以你代码的
程度判断你的见解,给你恰当的分数)
邮箱:742538806@qq.com(如果回答在上面不方便请发到这个邮箱)
多谢了,先知!
先给50分,而后再看你的答案追加。
1楼和三楼回答的都还可以,
直是我想看下更多人的意见
还请看到的朋友帮赐教一下,好生感激!!!!!!!!!
1楼和3楼的都可以吧,只是不够详细,如果更具体点就更好了。
百度这个给分做的真不好,如果把分给两个以上多好,还有直能加两次分,
还有高人给意见没? 展开
1.请能用C++写小游戏的那种境界的朋友或是有一定境界的朋友,帮谈下C++的学习和应用和思考方式方面的心德?
2.请问,我现在已学了C++的一些概念方面的东西了,(函数啊,指针啊,循环语句啊,虚函数啊,数组啊,继承啊,这些我全部学过了,)下一步向哪深入?好的学习顺序请帮赐教下?
3.比如看到一个这样的问题,调查肇事司机的车牌号的程序,条件一,四位数,前两个相同,条件二后两个相同,但不同于前两个,条件三,这个四位数刚好是一个数的平方
用以上三个条件求出这个车牌号?C++ 这个的思考思路?和要使用哪些函数可以实现?有C++代码带注释最好,最主要的是请帮在前面写上思考思路?
4.比如有些头文件,iostream, cmath....这些里面有什么函数的这些文件名在哪去查?我现在就只用过 iostream, string还有其它的在哪看?还有一些函数名用途()里的参数书写格式,哪可以查到?
5.请帮给出一段,你觉得你写的最得意的代码?如果加注释最好,(以便我以你代码的
程度判断你的见解,给你恰当的分数)
邮箱:742538806@qq.com(如果回答在上面不方便请发到这个邮箱)
多谢了,先知!
先给50分,而后再看你的答案追加。
1楼和三楼回答的都还可以,
直是我想看下更多人的意见
还请看到的朋友帮赐教一下,好生感激!!!!!!!!!
1楼和3楼的都可以吧,只是不够详细,如果更具体点就更好了。
百度这个给分做的真不好,如果把分给两个以上多好,还有直能加两次分,
还有高人给意见没? 展开
4个回答
展开全部
1. C++可以描述为:包括两部分,C和C++。所以,用C++解决问题,无非就是算法与对象。也就是面向过程的算法,以及面象对象的抽象。
2。建议你学习一下面向对象,UML,设计模式等。
3。解决此问题,你可以按着C的思考方式,只不过就是在那个基础上,将它封装成类。
4。你说的那些都是C++标准库中的,也就是STL,你可以搜索一下STL方面的书。
5。这个。。。不知道你要哪方面的,你想干什么。我现在正在写个指针,就把这个先粘上吧。
template<typename _DLG,typename _DATA>
struct TPage
{
typedef TPage<typename _DLG,typename _DATA> _ThisType;
_DLG * _p;
int _nRef;
TPage()
{
_p=NULL;
_nRef=0;
}
~TPage()
{
if(_p)
{
_p->DestroyWindow();
delete _p;
_p=NULL;
if(_nRef)
{
nRef--;
}
}
}
void Initial(_DATA datatype,CWnd* pWnd)
{
CRect rect;
pWnd->GetWindowRect(rect);
_p=new _DLG(pWnd);
_p->SetData(datatype);
_p->Create(_DLG::IDD,pWnd);
CRect rectX;
GetWindowRect(_p->GetSafeHwnd(),rectX);
int nWidth=rectX.Width();
int nHeight=rectX.Height();
rectX.left=rect.left+(rect.Width()-rectX.Width())/2;
rectX.right=rectX.left+nWidth;
rectX.top=rect.top+(rect.Height()-nHeight)/2;
rectX.bottom=rect.top+nHeight;
_p->MoveWindow(rectX);
_p->ShowWindow(nRef?SW_HIDE:SW_SHOW);
nRef++;
_nRef=nRef;
}
void Initial(_DATA datatype,CRect rect,CWnd* pWnd)
{
_p=new _DLG(pWnd);
_p->SetData(datatype);
_p->Create(_DLG::IDD,pWnd);
CRect rectX;
GetWindowRect(_p->GetSafeHwnd(),rectX);
int nWidth=rectX.Width();
int nHeight=rectX.Height();
rectX.left=rect.left+(rect.Width()-rectX.Width())/2;
rectX.right=rectX.left+nWidth;
rectX.top=rect.top+(rect.Height()-nHeight)/2;
rectX.bottom=rect.top+nHeight;
_p->MoveWindow(rectX);
_p->ShowWindow(nRef?SW_HIDE:SW_SHOW);
nRef++;
}
_DLG * operator -> ()
{
return _p;
}
_ThisType& operator =(_ThisType & _t)
{
_p=_t._p;
return *this;
}
void SaveData(int nWhich)
{
if (nWhich==_nRef-1 && nWhich!=-1)
{
_p->SaveData();
}
}
};
我要做一个对话框的布局。我感觉太麻烦,于是写了这么个东西,用处不太大,相当于智能指针。你先将就看吧。
2。建议你学习一下面向对象,UML,设计模式等。
3。解决此问题,你可以按着C的思考方式,只不过就是在那个基础上,将它封装成类。
4。你说的那些都是C++标准库中的,也就是STL,你可以搜索一下STL方面的书。
5。这个。。。不知道你要哪方面的,你想干什么。我现在正在写个指针,就把这个先粘上吧。
template<typename _DLG,typename _DATA>
struct TPage
{
typedef TPage<typename _DLG,typename _DATA> _ThisType;
_DLG * _p;
int _nRef;
TPage()
{
_p=NULL;
_nRef=0;
}
~TPage()
{
if(_p)
{
_p->DestroyWindow();
delete _p;
_p=NULL;
if(_nRef)
{
nRef--;
}
}
}
void Initial(_DATA datatype,CWnd* pWnd)
{
CRect rect;
pWnd->GetWindowRect(rect);
_p=new _DLG(pWnd);
_p->SetData(datatype);
_p->Create(_DLG::IDD,pWnd);
CRect rectX;
GetWindowRect(_p->GetSafeHwnd(),rectX);
int nWidth=rectX.Width();
int nHeight=rectX.Height();
rectX.left=rect.left+(rect.Width()-rectX.Width())/2;
rectX.right=rectX.left+nWidth;
rectX.top=rect.top+(rect.Height()-nHeight)/2;
rectX.bottom=rect.top+nHeight;
_p->MoveWindow(rectX);
_p->ShowWindow(nRef?SW_HIDE:SW_SHOW);
nRef++;
_nRef=nRef;
}
void Initial(_DATA datatype,CRect rect,CWnd* pWnd)
{
_p=new _DLG(pWnd);
_p->SetData(datatype);
_p->Create(_DLG::IDD,pWnd);
CRect rectX;
GetWindowRect(_p->GetSafeHwnd(),rectX);
int nWidth=rectX.Width();
int nHeight=rectX.Height();
rectX.left=rect.left+(rect.Width()-rectX.Width())/2;
rectX.right=rectX.left+nWidth;
rectX.top=rect.top+(rect.Height()-nHeight)/2;
rectX.bottom=rect.top+nHeight;
_p->MoveWindow(rectX);
_p->ShowWindow(nRef?SW_HIDE:SW_SHOW);
nRef++;
}
_DLG * operator -> ()
{
return _p;
}
_ThisType& operator =(_ThisType & _t)
{
_p=_t._p;
return *this;
}
void SaveData(int nWhich)
{
if (nWhich==_nRef-1 && nWhich!=-1)
{
_p->SaveData();
}
}
};
我要做一个对话框的布局。我感觉太麻烦,于是写了这么个东西,用处不太大,相当于智能指针。你先将就看吧。
展开全部
C++进阶方法(我的个人意见,我就是按照这个步骤来学习的)
先看 C++ primer
再看 C++标准程序库 STL深入浅出
然后看 C++Template
最后看 设计模式 范行编程 并行编程与分布式计算 以及 C++缺陷等进阶书籍
另外,库函数等不懂的看CSDN。
要写出好的代码,请先系统看看软件工程书籍,如果讲究速成就看林锐的C/C++高质量编程
先看 C++ primer
再看 C++标准程序库 STL深入浅出
然后看 C++Template
最后看 设计模式 范行编程 并行编程与分布式计算 以及 C++缺陷等进阶书籍
另外,库函数等不懂的看CSDN。
要写出好的代码,请先系统看看软件工程书籍,如果讲究速成就看林锐的C/C++高质量编程
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <iostream.h>
#include <math.h>
#define S(a,b,c) ((a+b+c)/2)
#define STYLE TRIANGEL
#define AREA(a,b,c) sqrt(S(a,b,c)*(S(a,b,c)-a)*(S(a,b,c)-b)*(S(a,b,c)-c))
void main()
{float a,b,c;
cout<<"a= "<<"b= "<<"c= "<<endl;
cin>>a>>b>>c;
#if STYLE == TRIANGLE //a+b>c&&a+c>b&&b+c>a //#if指令检测跟在制造另关键字后的"常量表达式",从而选择是否编译至目标文件中,
//而a,b,c,是程序运行时才知道它的值,
//故在if后实现的话,这里根本就不可行
if(a+b>c&&a+c>b&&b+c>a)
{cout<<"a="<<a<<" b="<<b<<" c="<<c<<endl;
cout<<"area="<<AREA(a,b,c)<<endl;}
else cout<<"input error!"<<endl;
#endif
}
//这个是选择编译,我看本题的原意是算不同类型的面积 ,完整的话还有一段计算矩形(类似的)面积的代码
//从而在选择计算何种类型的面积时,修改源码,是 STYLE 为不同的值
//
#include <math.h>
#define S(a,b,c) ((a+b+c)/2)
#define STYLE TRIANGEL
#define AREA(a,b,c) sqrt(S(a,b,c)*(S(a,b,c)-a)*(S(a,b,c)-b)*(S(a,b,c)-c))
void main()
{float a,b,c;
cout<<"a= "<<"b= "<<"c= "<<endl;
cin>>a>>b>>c;
#if STYLE == TRIANGLE //a+b>c&&a+c>b&&b+c>a //#if指令检测跟在制造另关键字后的"常量表达式",从而选择是否编译至目标文件中,
//而a,b,c,是程序运行时才知道它的值,
//故在if后实现的话,这里根本就不可行
if(a+b>c&&a+c>b&&b+c>a)
{cout<<"a="<<a<<" b="<<b<<" c="<<c<<endl;
cout<<"area="<<AREA(a,b,c)<<endl;}
else cout<<"input error!"<<endl;
#endif
}
//这个是选择编译,我看本题的原意是算不同类型的面积 ,完整的话还有一段计算矩形(类似的)面积的代码
//从而在选择计算何种类型的面积时,修改源码,是 STYLE 为不同的值
//
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
谈一下问题3的思路:88*88=7744
简单的方法是
只有34的平方1100--1199区间,但其值为1156,不合适
只有47的平方2200--2299区间,但其值为2209,不合适
只有58的平方3300--3399区间,但其值为3364,不合适
只有67的平方4400--4499区间,但其值为4489,不合适
没有整数的平方在5500--5599区间
没有整数的平方在6600--6699区间
只有88的平方7700--7799区间,其值为7744,合适
只有94的平方8800--8899区间,但其值为8836,不合适只
没有整数的平方在9900--9999区间
问题4:
MSDN
简单的方法是
只有34的平方1100--1199区间,但其值为1156,不合适
只有47的平方2200--2299区间,但其值为2209,不合适
只有58的平方3300--3399区间,但其值为3364,不合适
只有67的平方4400--4499区间,但其值为4489,不合适
没有整数的平方在5500--5599区间
没有整数的平方在6600--6699区间
只有88的平方7700--7799区间,其值为7744,合适
只有94的平方8800--8899区间,但其值为8836,不合适只
没有整数的平方在9900--9999区间
问题4:
MSDN
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询