首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

如何C++里啥也没有

2012-03-23 
怎么C++里啥也没有啊我想要得到一个数组的最下标在VB里是 Ubound(数组)在C++里怎么得到呢?虽然可以用 #def

怎么C++里啥也没有啊
我想要得到一个数组的最下标

在VB里是 Ubound(数组)

在C++里怎么得到呢?

虽然可以用 #define 这类方法定义一个常量 但是通过参数的话总不能传个数组,再传个数组最下标吧?

太繁琐了,我想直接传入参数,然后 自定义函数内得到数组参数的最下标

打个比方

int a[3]={1,2,3};

Myfunction(a,3);

这样明显的很多余 造成代码臃肿而且非常不灵活还易出错

我想在 Myfunction内 直接得到参数1,

直接通过参数1 得到a的最下标,


以下是VB代码

Private Sub Command1_Click()
  Dim A(10)
  Call Myfunction(A)
End Sub

Function Myfunction(Myarray)
  MsgBox UBound(Myarray) //这里直接通过参数1 返回 10
End Function


不过 如果真的在VB内我就不这样写了,直接通过Ubound()函数直接得到数组的最下标

C++里真的搞太明白

就没有现成的函数吗,难道每个函数都要自己写吗??

我写这个过程是为了写一个VB内的Join函数....合并数组的.....


虽然这个也行 但是无法通过参数来判断 
int a[4]={30,20,10};
cout<<sizeof(a)/sizeof(a[0]);

这些方法技巧 要么只能在mfc里用,要么只能在win32里用,根本就不通用,真是头大了,

我昨天写了个循环

本来只需要2-3步的事,结果转换来转换去,这个类型转换那个类型 又是声明 又是定义 又是赋值的

2行代码的事 结果在C++编译器里 得写近20多行代码

我真郁闷了 这让新手情何以堪 C++不是以灵活简洁号称的吗 我怎么没感受到呢



[解决办法]
int a[3]={1,2,3};

Myfunction(a,3);

只能这样了吧,没办法,适应了就好了
[解决办法]
没办法,规定就是如此的.
你没见new了你必须要delete,不然它就不管你漏不漏了,你看人家Java不是也可以光new不delete.
已经这样了,你只能去习惯与遵守,否则就不要用它了
[解决办法]
的确如此啊
[解决办法]
"C++不是以灵活简洁号称的吗" 
繁琐==灵活,
这里的“简洁”是相对于汇编语言来说的,我是这么认为的。
[解决办法]

探讨
果真这么繁琐????

问个问题,高人们写东西的时候,要不要引用下自己写的插件集?

就是为了省事而写的一些自编函数

热点排行