| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 502 人关注过本帖
标题:求解释行C++
只看楼主 加入收藏
Sornets
Rank: 2
等 级:论坛游民
帖 子:102
专家分:61
注 册:2012-11-22
结帖率:58.82%
收藏
已结贴  问题点数:20 回复次数:3 
求解释行C++
程序代码:
#include <iostream>
#include <iomanip>
using namespace std;
class Point
{
    public:
    Point(double aa=0,double bb=0)
    {
        x=aa;
        y=bb;
    }
    void show()
    {
        cout<<"Point : ("<<setprecision(16)<<x<<", "<<y<<")\n";
    }
    private:
    double x,y;
};
int main()
{
    char c;
    double a, b;
    Point q;
    while(std::cin>>a>>c>>b)
    {
        Point p(a, b);
        p.show();
    }
    q.show();
}


while里那个Point p(a,b)怎么理解?
我感觉应该写成
Point p;
Point.Point (a,b);


2013-04-15 22:09
如蜗牛
Rank: 2
等 级:论坛游民
威 望:1
帖 子:40
专家分:42
注 册:2013-4-12
收藏
得分:7 
我认为,Point p(a,b),完成两个动作:声明一个对象p,调用构造函数。你可以去看看构造函数和理解一下类和对象的关系!
2013-04-15 22:13
邓士林
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:淮河河畔
等 级:贵宾
威 望:61
帖 子:2392
专家分:13384
注 册:2013-3-3
收藏
得分:7 
Point p(a, b);这是定义个类对象并进行赋值,
Point p;
Point.Point (a,b);
如果一个函数和类型一样,那么这个函数就是构造函数,所以你的初衷这样写不是对的,类可以定义对象,但是不能引用对象,只有对象能引用类中的成员函数。


Maybe
2013-04-15 23:00
好聚好散
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:138
专家分:123
注 册:2012-12-4
收藏
得分:7 
构造函数,,,Point p(a, b)。。。。aa = a; bb = b;

无节操,无真相
2013-04-16 12:36
快速回复:求解释行C++
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014385 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved