| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 763 人关注过本帖
标题:using c++中碰到的问题
只看楼主 加入收藏
zinking
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:35
帖 子:916
专家分:0
注 册:2004-12-5
收藏
 问题点数:0 回复次数:9 
using c++中碰到的问题
今天把平常的问题全都聚到这里了
1。如何声明和编写任意个参数的函数
2。在类的一章中碰到零时对象这个概念,想问临时变量都出现在那些具体的情况下,要注意哪些问题?
3。看书时听见这样的一句话“无论什么时候设计一个包含静态变量的函数时,都因该记住多线程问题”这 是什么意思呢?
搜索更多相关主题的帖子: using 变量 线程 静态 函数 
2005-09-22 15:40
zinking
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:35
帖 子:916
专家分:0
注 册:2004-12-5
收藏
得分:0 
看的是Eckel 的thinking in c++
没有人稍微说两句吗?

http://kongfuziandlife. http://codeanddesign.
2005-09-23 12:07
kai
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:52
帖 子:3450
专家分:59
注 册:2004-4-25
收藏
得分:0 
比如下面算不算任意个参数的函数呢?

int main(char * args[], int arg)
{
  // code
}

你的第二个问题,我想还是要想强调 传值 和 传对象 的区别。
temp 通常在 swap  和指针遍历时 会用。

你的第三个问题,不太清楚。

自由,民主,平等,博爱,进步.
中华民国,我的祖国,中华民国万岁!中华民国加油!
本人自愿加入中国国民党,为人的自由性,独立性和平等性而奋斗!
2005-09-23 12:45
jackrain
Rank: 1
等 级:新手上路
帖 子:182
专家分:0
注 册:2005-9-4
收藏
得分:0 
1、任意个参数,参数列表中用….
2、临时变量在函数调用、返回时出现(非引用调用和返回时)
3、多线程问题,一般是指线程同步问题。他们可能同时要求修改静态变量,或者一个读,另一个写,会出现意想不到的 后果,

程序和身体一样,健壮,再健壮! 我爱C++
2005-09-23 13:09
zinking
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:35
帖 子:916
专家分:0
注 册:2004-12-5
收藏
得分:0 
jackrain很强啊,第一个问题再具体点
那比如我要一个程序就一个求和函数 求所有输入的参数的和
就用任意个参数的写法写这个程序,能写出来吗〉

http://kongfuziandlife. http://codeanddesign.
2005-09-23 13:23
jackrain
Rank: 1
等 级:新手上路
帖 子:182
专家分:0
注 册:2005-9-4
收藏
得分:0 

#include <iostream.h> #include <stdarg.h> using namespace std;

void sum(int...); int main() { sum(1,2,3,-1); sum(5,7,8,9,10,11,-1); return 0; } void sum(int severity ...) { va_list ap; int sum = severity; cout<<"Sum("<<sum; va_start(ap, severity); for(;;) { int p = va_arg(ap, int); if(p == -1)break; sum += p; cout<<','<<p; } va_end(ap); cout<<")="<<sum<<'\n'; } 程序不完善,我想不出判断参数结束的方法。


程序和身体一样,健壮,再健壮! 我爱C++
2005-09-23 15:00
lisypro
Rank: 4
等 级:业余侠客
威 望:3
帖 子:695
专家分:216
注 册:2005-9-25
收藏
得分:0 

jackrain 太强了,不过我认为用字串做这个会简单一些。

#include <cstdlib> #include <iostream> #include <string> using namespace std; int addfun(string sExp) { int i=0,j=0; int result=0; for(;i<sExp.size();i++) { if (sExp[i]=='+') { result += j; j=0; } else {j=j*10+sExp[i]-'0'; } } return result+j; } int main(int argc, char *argv[]) { string sExp; cout << "input add exp"; cin >> sExp; cout << endl; cout << addfun(sExp);

}


长期承接管理系统
代做各种vb/ / vc小程序
QQ:82341763
手机:13623290828
群号 11619730
2005-09-25 11:55
编程浪子
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2005-7-22
收藏
得分:0 
lisypro 也很强的,看来全是高手中的高手了,学习了

喜欢IT技术的人士欢迎来到《IT精英族》QQ群作客:4135806
2005-09-25 16:25
neptune813
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2005-9-26
收藏
得分:0 
你们都是高手,我什么也看不懂!
2005-09-27 16:47
dxlwjt5188
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2005-9-27
收藏
得分:0 
厉害 原来高手在这里哦 以后希望你们能多多指教我们
2005-09-27 20:41
快速回复:using c++中碰到的问题
数据加载中...
 
   



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

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