2012-05-04 72 views
-3

如何将一个int的值拷贝到一个新的const int?转换为const int

从这个:

int start= 343; 

到这一点:

const int end = start; 

如何才能做到这一点,任何的例子吗?我真的不知道怎么了,请帮我OUT-

+1

这会更有助于解释为什么你a重新做这个。 –

+1

因为我想知道是否有可能,如果是的话,那么如何 – user1341993

+3

-1,因为你提供的“代码”回答你自己的问题。提供更好的代码,以便我们可以了解真正的问题。 –

回答

9

像这样:

int start = 343; 
const int end = start; 

如果你想确保end是常量,试图修改它:

end++; // Compile error! 
+0

没有什么变化,它仍然是一个int而不是const int – user1341993

+3

@ user1341993不,结尾是一个const int ...这就是它前面的const int。 – hvd

+0

+1,你可以补充说'end'应该在块范围声明。 – ouah

0

如果您正在使用C++,你可以在运行时设置一个常量成员变量:

class M 
{ 
    public: 
     M(int number) : mNumber(number) 
     { 
     } 
    const int mNumber; 
}; 
+4

你并不完全错误,但你不必要的复杂事情。 – hvd

+0

如何使用这个? – user1341993

+0

也没有一个类,'int start; scanf(“%d”,&start); const int end = start;'但是后面的任何变化都不允许,我在第一个答案中错了,对不起,我让这样做。 –