小编use*_*004的帖子

对象调用一个对象

有人可以向我解释(*this)指针并演示它如何被用作调用同一类的另一个对象的对象.我不明白的是你如何在同一个变量名的不同2个不同对象的成员函数中引用两个数字.例如,乘以两个数字.

a.Multiply(b);
//....
Numbers::Numbers Multiply(Numbers auggend)
{
}
Run Code Online (Sandbox Code Playgroud)

c++ pointers class

3
推荐指数
1
解决办法
129
查看次数

运算符重载模板

我试图使用operator <,>方法运行一个带有模板的程序,我得到一个编译器错误告诉我"从这里实例化"并且不能转换为Temps<double>' to双重',当我调用运算符函数时问题开始了代码..

    template <class T>
class Temps
{   
 private:   
 T a;

 public:
 Temps()
 {
 }
 Temps(T b)
 {
   a=b;
         }     
 T operator<(Temps c)
 {
   if (a < c.a)
   {
      return *this;
   }
   return c;        
 } 
 T operator>(Temps c)              
   {
      if (a > c.a)
      {
         return *this;
      }

      return c;                 
   }   

};

int main()
{

    double d1 = -9.002515,d2=98.321,d3=1.024;

    Temps<double>mag(d1);
    Temps<double>lag(d3);
    Temps<double>tag;
    tag=mag < lag;

    system("pause");
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ templates operator-overloading

0
推荐指数
1
解决办法
334
查看次数

字符串反向错误

任何人都可以向我解释为什么我得到一个".exe遇到问题并需要关闭"错误,它有时编译和工作当我摆弄char数组,但当它工作时我有时会得到奇怪的字符在结束时串.

    #include <iostream>
using namespace std;
char* StrReverse3(char*);
char* StrReverse3(char* str)
{
    char *p;

    int length=0,start=0,end=0;
    length=strlen(str);

    for(start=0,end=length-1;end>= 0,start<=length-1;end--,start++)
    {
        p[start]=str[end];
    }   


    return p;
}
int main()
{
  char str[100]="Saw my reflection in snow covered hills";
  StrReverse3(str);

cin.get();
return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ string

-1
推荐指数
1
解决办法
322
查看次数

标签 统计

c++ ×3

class ×1

operator-overloading ×1

pointers ×1

string ×1

templates ×1