标题:最近刚学c++,有个小疑问
取消只看楼主
绿茶盖儿
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:1
帖 子:363
专家分:1852
注 册:2011-9-3
结帖率:84.62%
已结贴  问题点数:20 回复次数:0 
最近刚学c++,有个小疑问
程序代码:
#include <iostream>
using namespace std;
class R
{
    public:
        R(int r1,int r2) {R1 = r1; R2 = r2;}
        R(R &r);
        ~ R() {}
        void print();
        void print() const;
    private:
        int R1,R2;
};

void R::print()
{
    cout<<R1<<":"<<R2<<endl;
}

R::R(R &r)
{
    R1 = r.R1;
    R2 = r.R2;
}

void R::print() const
{
    cout<<R1<<";"<<R2<<endl;
}

int main()
{
    R a(5,4);
    a.print();
    R const b(20,52);
    b.print();
    R aa(a);
    aa.print();
    R bb(b);      //这个地方有错误
    bb.print();
    return 0;
}


F:\myproject\c_program\exp1.cpp(39) : error C2558: class 'R' : no copy constructor available
Error executing cl.exe.

此处b是一个常对象,我想问一下错误原因是不是不能用常对象去初始化对象bb啊
2011-11-16 23:19



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-355437-1-1.html




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

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