0

假设我们有两个函数(不是任何类成员):

int input_int (int *p)
{
 p[0] = 10;
 return p[0];
}

char input_char (char *p)
{
 p[0] = 5;
 return p[0];
}

还有一些课程:

class foo {
   public:
      foo();
      void some_usefull_stuff() {
           int i = input_int( &(this->A) );
      }
   protected:
      void feature_for_usefull_stuff() {
           char chr = input_char( &(this->B) );
      }
      int A;
   private:
      char B;
};

函数 input_char 和 input_int 能正常工作吗?他们不会产生分段错误或任何异常吗?

4

1 回答 1

1

是的,它们会正常工作,传递给方法的地址是正确的,并且指向正确的数据类型。

于 2012-09-03T19:32:38.100 回答