用友元函数写一个向量夹角类,求夹角。c++

C++友元习题_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
C++友元习题
阅读已结束,下载文档到电脑
想免费下载本文?
定制HR最喜欢的简历
下载文档到电脑,方便使用
还剩8页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢用了友元函数,还不能用类的私有部分,求解【c++吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:293,539贴子:
用了友元函数,还不能用类的私有部分,求解收藏
#include&iostream&class Vector{private:void set_mag();void set_ang();void set_x();void set_y();public:Vector();Vector(double n1,double n2,char form='r');void set(double n1,double n2,char form='r');Vector operator*(double n)friend Vector operator*(double n,const Vector & a);friend std::ostream & operator&&(std::ostream & os,const Vector &v);};
c++培训课程,美国上市公司&达内&出品c++课程,15年教学经验,总监级c++讲师亲授!!达内首创&先就业后付款&模式.名企项目总监授课,成就&稀缺级&c/c++软件工程师
Vector Vector::operator*(double n,const Vector &a){return a*n;}std::ostream &operator&&(std::ostream &os,const Vector & v){if(v.mode=='r')os&&"(x,y)=("&&v.x&&","&&v.y&&")";else if (v.mode=='p'){os&&"(m,a)=("&&v.mag&&","&&v.ang*Rad_to_deg&&")";}else os&&"Vector object mode is invalid";}
大神们看看友元函数那里错了??我用的是微软visualC++,他说不能调用Vector里的x,y,ang,mag,
哈哈,会写向量啊!
哈哈,会写向量啊!
求解,这是书上一个例题,对照了几遍,一模一样,但是还是显示错误啊
这是运行结果
万能的C++吧啊,快给出我答案啊
c++多少钱?万和专注it教育24年,优秀的师资团队,雄厚的教学环境,赢得数万学子的好评,万和24年不开分支机构,只为专注教学品质,传承万和不朽品牌!
在声明私有函数的时候,就应该声明为友元函数。你试试看行不、、
void set_mag();void set_ang();void set_x();void set_y();这些函数都应该声明为友元函数,下面类外就可以不用写friend,系统会自动识别为类的友元函数、、、
还是不行啊,求解
登录百度帐号推荐应用class A{public:
bool kk(int i){return i&1;}};typedef bool (A::* XXX)(int);int main(){
XXX p = NULL;
p = &A:: // pointer to member function kk in class A;
A *pa = new A;
(pa-&*p)(10); // to call a member function from pointer, must specific a pointer to class first}
收获园豆:4
|园豆:557
其他回答(1)
不能,静态函数可以.你申明友元函数时应该把 Preprocess*&作为参数传入.
class Preprocess{public:
Preprocess(void);
~Preprocess(void);public:
typedef vector&string&(Preprocess::*FUNCSEG)(string,set&string&);
vector&string& goodWordsinPieceArticle(string rawtext,set&string& stopwords);
int ConstructMap(map&string,vector&pair&int,int&&&&mymap,char *dbfield,FUNCSEG seg)
set&string&
vector&string&wordcollection = (this-&*seg)(rawtext,stopwords);
void WriteTotalArff(int DFthreshlod,bool isbagOfwordsexsist)
char * dbfield="CAbstract";
FUNCSEG seg=&Preprocess::goodWordsinPieceA
map&string,vector&pair&int,int&&&
ConstructMap(mymap,dbfield,seg);
把你的代码简化了下,如上所示.
收获园豆:1
园豆:44856
园豆:44856
&&&您需要以后才能回答,未注册用户请先。安全检查中...
请打开浏览器的javascript,然后刷新浏览器
< 浏览器安全检查中...
还剩 5 秒&

我要回帖

更多关于 向量夹角 的文章

 

随机推荐