论C++标准委员会制定的一条不合理的标准

原创 2006年05月23日 20:28:00

论C++标准委员会制定的一条不合理的标准

C++标准委员会不让for后()中定义的变量在外边用,我觉的非常不合理
在我做的太极语言中是这样设计的,()中的名字注册进入首个含名字空间的母垣(垣的概念大家都知道了吧),中间如果经过了{}则要加序号标记。

for()中定义的变量让不让在外边用曾经是一个争议挺大的问题.在太极语言中是这样考虑的:单独从for本身考虑两方面的意见不好确定,把目光放向全局.就是看()中定义的变量是否要全区域可见.

在太极语言中讲究"做一件事情只要一句话",让紧密关联的代码能写在一句中.
比如下面的一个函数调用.
fc(&(int a));//原型为 void fc(int * p);
k=a;
所以必须让()中定义的变量全区域可见.

在C/C++中你却必须这样写,
int a;
fc(&a);
k=a;
违背了"紧密关联的代码能写在一句中"这个原则.


举具体例子对比一下:
太极语言:
FindFirstFile(pfindstr,&(WIN32_FIND_DATA wfd));

C/C++:
WIN32_FIND_DATA wfd;
FindFirstFile(pfindstr,&wfd);


太极语言:
m_edit1.GetWindowText(CString cstr);
m_edit2.SetWindowText(cstr);

C/C++:
CString cstr;
m_edit1.GetWindowText(cstr);
m_edit2.SetWindowText(cstr);


太极语言:
FindFirstFile(char * pfindstr="*.*",&(WIN32_FIND_DATA wfd));

C/C++:
char * pfindstr="*.*";
WIN32_FIND_DATA wfd;
FindFirstFile(pfindstr,&wfd);


从代码的可读性与直观性与可维护性上太极语言所采用的方式是比C/C++好的.
需要预定义的变量增多时这种表现更明显.必须让()中定义的变量全区域可见!
那么从形式连贯一致性角度考虑,也要让for()中定义的变量全区域可见!

C++11新标准

C++11标准发布已有一段时间了, 维基百科上有对C++11新标准的变化和C++11新特性介绍的文章. 我是一名C++程序员,非常想了解一下C++11. 英文版的维基百科看起来非常费劲,而中文版维基百...
  • whhitxjl
  • whhitxjl
  • 2016年02月20日 10:43
  • 5838

密码行业标准培训小结

密码行业培训班 @北京 @2014.07.23~2014.07.26   概述          本届培训是针对密码管理局发布的第三部分系列标准的培训,这批标准是继第一批算法系列,第二批算法...
  • joey6366
  • joey6366
  • 2014年07月31日 16:50
  • 1715

C++ 标准输入 cin 使用

cin 总结:  //    1.  cin >> xxx  并且 cin会忽略 空格  回车 tab 这些 // //          a.需要看xxx是什么数据类型,如果是int  当输入字符时...
  • ym19860303
  • ym19860303
  • 2013年07月12日 01:44
  • 2783

C++标准库头文件介绍

C++标准库的所有头文件都没有扩展名。C++标准库的内容总共在50个标准头文件中定义,其中18个提供了C库的功能。 形式的标准头文件【 例外】其内容与ISO标准C包含的name.h头文件相同,但容纳了...
  • piao1024287076
  • piao1024287076
  • 2016年09月26日 16:17
  • 1477

C/C++ 标准输入输出的坑

 最近公司项目需要分析日志,我拿到的日志经过了一次处理,以Json格式存储,日志量每小时大约1G,行数大约60万,此为背景。 其实对于这类问题,通常的解法是写个脚本去跑。对于我来说,主业是C/...
  • yunxiaopiao
  • yunxiaopiao
  • 2015年05月26日 17:38
  • 884

C++语言的历史和标准化

1979年4月,贝尔实验室的Bjarne Stroustrup(本贾尼·斯特劳斯特卢普)博士等人负责分析UNIX内核,但当时没有合适的工具能够有效地分析由于内核分布而造成的网络流量,将内核模块化,因此...
  • lemonrabbit1987
  • lemonrabbit1987
  • 2015年09月05日 08:49
  • 874

C++标准库和标准模板库

(1)成本:已经作为标准提供,何苦再花费时间、人力重新开发呢; (2)质量:标准库的都是经过严格测试的,正确性有保证; (3)效率:关于人的效率已经体现在成本中了,关于代码的执行效率要相信实现标准库的...
  • rl529014
  • rl529014
  • 2016年04月14日 20:42
  • 6815

C++ 标准输入输出 操纵符

操纵符在头文件iomanip中 #include #include using namespace std; int main(){ int i=4,j=6,k=8; char c1='!'...
  • Slience_Perseverance
  • Slience_Perseverance
  • 2014年02月23日 00:52
  • 5011

C++中的标准输入和输出

在C语言中我们的输入和输出都是以printf和scanf进行操作的。他们都是函数。在C++中的我们的输入输出都是以终端为对象的,即从键盘输入数据,运行结果输出到显示器屏幕上。从操作系统(Linux)的...
  • farsight2009
  • farsight2009
  • 2017年01月03日 15:49
  • 397

C++的输入和输出与标准输出流

一、 C++ 输入输出的含义    以前所用到的输入和输出,都是以终端为对象的,即从键盘输入数据,运行结果输出到显示器屏幕上。从操作系统的角度看,每一个与主机相连的输入输出设备都被看作一个文件。程...
  • yas12345678
  • yas12345678
  • 2016年09月20日 11:23
  • 2863
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:论C++标准委员会制定的一条不合理的标准
举报原因:
原因补充:

(最多只允许输入30个字)