荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: bakey (猪朋狗友), 信区: Program
标  题: [合集]能否直接用cin通过类函数进行赋值?
发信站: 荔园晨风BBS站 (2005年12月28日01:29:34 星期三), 站内信件

☆   1  ──────────── 我是分割线 ─────────────────☆
发信人: bso (meteor), 信区: Program
标  题: 能否直接用cin通过类函数进行赋值?
时  间: Mon Dec 26 16:37:29 2005

例如:
class exam
{
private:
     char *s;
public:
     void set(char *m){s=m;}
};
能不能通过cin直接给s赋值?
如何给s赋值?


☆   2  ──────────── 我是分割线 ─────────────────☆
发信人: bakey (猪朋狗友), 信区: Program
标  题: Re: 能否直接用cin通过类函数进行赋值?
时  间: 2005年12月26日17:22:10 星期一

先搞清楚类的定义先.....
【 在 bso (meteor) 的大作中提到: 】
: 例如:
: class exam
: {
: private:
:      char *s;
: public:
:      void set(char *m){s=m;}
: };
: 能不能通过cin直接给s赋值?
: 如何给s赋值?



☆   3  ──────────── 我是分割线 ─────────────────☆
发信人: bso (meteor), 信区: Program
标  题: Re: 能否直接用cin通过类函数进行赋值?
时  间: Mon Dec 26 17:28:27 2005

你觉得应该如何赋值呢?
【 在 bakey 的大作中提到: 】
: 先搞清楚类的定义先.....
: 【 在 bso (meteor) 的大作中提到: 】
: : 例如:
: : class exam
: : {
: : private:
: :      char *s;
: : public:
: :      void set(char *m){s=m;}
: : };
: : 能不能通过cin直接给s赋值?
: : 如何给s赋值?



☆   4  ──────────── 我是分割线 ─────────────────☆
发信人: bakey (猪朋狗友), 信区: Program
标  题: Re: 能否直接用cin通过类函数进行赋值?
时  间: 2005年12月26日17:33:05 星期一

如何不能赋值呢...有N多种办法
具体问题具体分析...
【 在 bso (meteor) 的大作中提到: 】
: 你觉得应该如何赋值呢?
: 【 在 bakey 的大作中提到: 】
: : 先搞清楚类的定义先.....
: : 【 在 bso (meteor) 的大作中提到: 】



☆   5  ──────────── 我是分割线 ─────────────────☆
发信人: bso (meteor), 信区: Program
标  题: Re: 能否直接用cin通过类函数进行赋值?
时  间: Mon Dec 26 17:38:42 2005

我是想直接通过set()这个函数进行赋值啊
不想另外定义变量
直接读入一个字符串然后用set()进行赋值,这样

【 在 bakey 的大作中提到: 】
: 如何不能赋值呢...有N多种办法
: 具体问题具体分析...
: 【 在 bso (meteor) 的大作中提到: 】
: : 你觉得应该如何赋值呢?



☆   6  ──────────── 我是分割线 ─────────────────☆
发信人: bakey (猪朋狗友), 信区: Program
标  题: Re: 能否直接用cin通过类函数进行赋值?
时  间: 2005年12月26日17:42:50 星期一

不如直接写个构造函数....
【 在 bso (meteor) 的大作中提到: 】
: 我是想直接通过set()这个函数进行赋值啊
: 不想另外定义变量
: 直接读入一个字符串然后用set()进行赋值,这样
:
:
: 【 在 bakey 的大作中提到: 】
: : 如何不能赋值呢...有N多种办法
: : 具体问题具体分析...
: : 【 在 bso (meteor) 的大作中提到: 】



☆   7  ──────────── 我是分割线 ─────────────────☆
发信人: bso (meteor), 信区: Program
标  题: Re: 能否直接用cin通过类函数进行赋值?
时  间: Mon Dec 26 17:53:42 2005

如果程序要求输入的话,直接用构造函数也不行啊
对于公有变量可以这样 cin>>exam.x;
但是对于私有变量就不能这样了.
所以想想,对于类成员函数能不能有这样的赋值呢?
主要就是,不需要另外定义变量,不想使用类似   char  aa[10];  exam.set(aa);这样的

【 在 bakey 的大作中提到: 】
: 不如直接写个构造函数....
: 【 在 bso (meteor) 的大作中提到: 】
: : 我是想直接通过set()这个函数进行赋值啊
: : 不想另外定义变量
: : 直接读入一个字符串然后用set()进行赋值,这样
: :
: :



☆   8  ──────────── 我是分割线 ─────────────────☆
发信人: bakey (猪朋狗友), 信区: Program
标  题: Re: 能否直接用cin通过类函数进行赋值?
时  间: 2005年12月26日18:03:59 星期一

那就直接在set里
cin >> x
【 在 bso (meteor) 的大作中提到: 】
: 如果程序要求输入的话,直接用构造函数也不行啊
: 对于公有变量可以这样 cin>>exam.x;
: 但是对于私有变量就不能这样了.
: 所以想想,对于类成员函数能不能有这样的赋值呢?
: 主要就是,不需要另外定义变量,不想使用类似   char  aa[10];  exam.set(aa);这样的
:
: 【 在 bakey 的大作中提到: 】
: : 不如直接写个构造函数....
: : 【 在 bso (meteor) 的大作中提到: 】



☆   9  ──────────── 我是分割线 ─────────────────☆
发信人: starsun (小刚与微软 ), 信区: Program
标  题: Re: 能否直接用cin通过类函数进行赋值?
时  间: Mon Dec 26 18:27:29 2005

#include <iostream.h>
class T
{
 private:
 char *a;
 public:
 T() {a=new char[88];}
 void set() {cout<<"input:";cin>>a;}
 void display() {cout<<a<<endl;}
 };
void main()
{
 T p;
 p.set();
 p.display();
 }
【 在 bso 的大作中提到: 】
: 例如:
: class exam
: {
: private:
:      char *s;
: public:
:      void set(char *m){s=m;}
: };
: 能不能通过cin直接给s赋值?
: 如何给s赋值?



☆  10  ──────────── 我是分割线 ─────────────────☆
发信人: starsun (小刚与微软 ), 信区: Program
标  题: Re: 能否直接用cin通过类函数进行赋值?
时  间: Mon Dec 26 18:29:42 2005

可以这样的吗?!:::void set(char *m) {s=m;}   字符串可以通过"="拷贝?
【 在 bso 的大作中提到: 】
: 例如:
: class exam
: {
: private:
:      char *s;
: public:
:      void set(char *m){s=m;}
: };
: 能不能通过cin直接给s赋值?
: 如何给s赋值?



☆  11  ──────────── 我是分割线 ─────────────────☆
发信人: bso (meteor), 信区: Program
标  题: Re: 能否直接用cin通过类函数进行赋值?
时  间: Mon Dec 26 21:35:21 2005

对哦,怎么没想到呢~~~~~~~呵呵,谢谢啦
【 在 bakey 的大作中提到: 】
: 那就直接在set里
: cin >> x
: 【 在 bso (meteor) 的大作中提到: 】
: : 如果程序要求输入的话,直接用构造函数也不行啊
: : 对于公有变量可以这样 cin>>exam.x;
: : 但是对于私有变量就不能这样了.
: : 所以想想,对于类成员函数能不能有这样的赋值呢?
: : 主要就是,不需要另外定义变量,不想使用类似   char  aa[10];  exam.set(aa);这?..
: :



☆  12  ──────────── 我是分割线 ─────────────────☆
发信人: bso (meteor), 信区: Program
标  题: Re: 能否直接用cin通过类函数进行赋值?
时  间: Mon Dec 26 21:37:04 2005

可以这样啊,因为都是字付串指针啊,都是指向一个地址
【 在 starsun 的大作中提到: 】
: 可以这样的吗?!:::void set(char *m) {s=m;}   字符串可以通过"="拷贝?
: 【 在 bso 的大作中提到: 】
: : 例如:
: : class exam
: : {
: : private:
: :      char *s;
: : public:
: :      void set(char *m){s=m;}
: : };
: : 能不能通过cin直接给s赋值?
: : 如何给s赋值?


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店