const相关内容

非平凡数据类型的预定义常量

我的目标:为同时具有ID和消息的预定义错误创建C#类. 这是我尝试过的: public class MyError { public static readonly MyError OK = new MyError(0, "OK"); public static readonly MyError Bad = new MyError(1, "Bad Stuff"); ..
发布时间:2020-05-14 02:07:31 C#/.NET

D中的逻辑常量

D具有两种类型的常量:不可变变量是被声明为不可变的,并且始终是不可变的,而 const 变量只是对象的只读版本. 逻辑常量是将函数标记为 const 的情况,但允许对一个或多个成员变量进行写访问.它的典型用途是用于延迟评估,例如(在C ++中) struct Matrix { double determinant() const { if ( m_dirty ) ..
发布时间:2020-05-14 02:06:51 其他开发

const参考VS move语义

我想知道自C ++ 11起在哪些情况下我仍然需要在参数中使用const引用.我不完全了解移动语义,但是我认为这是一个合法的问题. 此问题仅适用于以下情况:const引用替换正在复制的副本,而仅需要“读取"该值(例如const成员函数的用法). 通常我会这样写一个(成员)函数: #include template class Vector { ..
发布时间:2020-05-12 19:25:24 其他开发

指针返回问题的C ++协方差问题

由于我的帖子含糊不清,因此我将重做. 我正在从Visual Studio 6.0环境升级到Visual Studio 2012环境的项目中遇到此问题. 我有一个类是从followinh MFC类(CPropertyPage)派生的,该类包含以下功能.文件是afxdlgs.h(mfc类) class CPropertyPage : public CDialog { public: vir ..
发布时间:2020-05-09 19:40:45 C/C++开发

函数中声明的const变量在堆栈中是否有只读存储器?

我知道全局const存储在.rodata中 此外,我知道在函数中声明的变量存储在堆栈中.但是,由于const应该是只读的,因此在堆栈中是否有针对它们的特殊部分?如何控制对他们的访问? 解决方案 您应该真正了解的内容:如果将一个对象声明为const,则编译器不会轻易让您尝试对其进行修改,并且如果您避开了编译器,则任何修改对象的尝试都是未定义的行为.而已.没有其他的.忘记.rodata或 ..
发布时间:2020-05-08 20:04:35 其他开发

对象中的const变量销毁后会发生什么变化?

我只是想知道忠实地遵循tslint是否可以,因为它建议我在不重新分配时使用const而不是let(这很有意义).尽管我听说另一位开发人员告诉我,使用const不好,因为它无法收集垃圾来清除内存. 我想更好地了解在对象中使用const的危险.我在下面的示例中担心它是否会导致我的Angular应用程序内发生内存泄漏. 例如在Angular应用中: import 'rxjs/add/o ..
发布时间:2020-05-08 19:59:23 其他开发

字符串文字的地址长度

我看到在具有GCC的Linux系统上,字符串文字的地址似乎比其他变量小得多.例如,下面的代码生成下面显示的o/p. #include int main() { char *str1 = "Mesg 1"; char *str2 = "Mesg 2"; char str3[] = "Mesg 3"; char str4[] = "Mesg ..
发布时间:2020-05-08 19:34:40 其他开发

当将返回值绑定到调用函数中的const引用时,它的生存期如何扩展到调用函数的范围?

“如果从函数返回一个值(不是引用),然后将其绑定到调用函数中的const引用,则其寿命将扩展到调用函数的范围." 所以:案例A const BoundingBox Player::GetBoundingBox(void) { return BoundingBox( &GetBoundingSphere() ); } 从函数GetBoundingBox() 返回类型为con ..
发布时间:2020-05-08 18:58:27 C/C++开发

C ++ 11:初始化静态const类成员

因此,我有一个主要包含静态内容的类,因为它需要是一个随时可访问且没有实例化的库.无论如何,此类都有一个公共的静态成员,即称为cfg的结构,该成员包含其所有配置参数(主要是通过其静态方法实现的算法的边界和公差).并且在顶部具有const静态成员,该成员与cfg具有相同的类型,但是具有所有默认/常规参数值.我模块的用户可能会加载它,对其进行部分修改,并将其应用为cfg,或用作参考或我所知道的. ..
发布时间:2020-05-08 01:54:02 C/C++开发

C ++静态常量成员变量的用法

说我有一个需要一些常量才能起作用的类.几个成员函数需要使用这些常量.由于#define可能会引起冲突,因此不予使用.常数是8或16位的十六进制模式,并存储为uint8_t或uint16_t.这些常量在类的实例之间也不会改变,因此,仅拥有一个常量副本就可以节省内存(尽管内存很少). 是否有任何不适当的方法,或者可能是完成上述任务的更好方法,而不是简单地执行以下操作: // mycode. ..
发布时间:2020-05-08 01:52:03 C/C++开发

映射与const键,但非const值?

我遇到的情况是,我希望有一个映射,该映射不允许在初始化后添加/删除键,但是允许更改值(因此,我不能简单地使映射const).即 /*semi-const*/ map myMap = initMap(); myMap[1] = 2; // NOT OK, because potentially adds a new key myMap.at ..
发布时间:2020-05-05 13:35:51 C/C++开发

如何在C中解析链接的宏?

如果我想使用预处理器#define语句来轻松定义和计算常量及通用函数,并利用较少的RAM开销(与使用const值相反).但是,如果将多个宏一起使用,我不确定如何解决它们. 我正在设计自己的DateTime代码处理程序,类似于linux时间戳,但是对于带有滴答更新的游戏来说,该更新代表了1/60秒.我宁愿声明链接的值,但想知道硬编码的值是否会执行得更快. #include ..
发布时间:2020-05-05 09:10:02 其他开发

我不了解C ++中#define宏的行为

我需要了解这段代码的工作原理: #define foo1( a ) (a * a) // How does this work? inline int foo2( int a ) { return (a * a); } int goo1( int x ) { return foo1(foo2(x)); } int goo2( int& x ) { return x ..
发布时间:2020-05-05 08:58:53 C/C++开发

从Lua初始化的const双

我有一个全局变量: const double myvar = 5.1; 现在,我正在将其转换为从Lua读取这些值. 但是,我不能简单地这样做: const double myvar = lua_tonumber(L,1); 由于main()必须首先执行才能启动Lua解释器等,但是如果我之后声明myvar,它将不是全局的. 有什么方法可以实现从Lua获取其值的全局co ..
发布时间:2020-05-04 07:10:37 其他开发

extern const char * const SOME_CONSTANT给我链接器错误

我想在API中提供一个字符串常量,如下所示: extern const char* const SOME_CONSTANT; 但是如果我在静态库源文件中将其定义为 const char* const SOME_CONSTANT = "test"; 针对该库进行链接并使用SOME_CONSTANT时,出现链接器错误: 错误1错误LNK2001:无法解析的外部符号"char ..
发布时间:2020-05-01 03:25:21 C/C++开发