static-members相关内容
为什么这不能在 Swift 1.2 中编译? protocol 协议 {静态变量名称:字符串 {get set}}struct 结构:原型{静态变量名称:字符串 =“名称"} (在 Swift 1.1 中,只需将协议声明中的 class 替换为 static.同样的问题.) 编译器抱怨我不符合协议.但为什么我不是?很容易证明Struct中的静态属性name是可读可写的,所以我肯定满足了协
..
假设我有基类 Validator. 类验证器{上市:无效验证(const string& str){if( k_valid_keys.find(str) == k_valid_keys.end() )抛出异常();}私人的:const static std::setk_valid_keys;}; 现在假设我需要扩展类Validator.每个派生类都有自己的一组有效键. 我的目标是: 让
..
我知道这是初学者的问题.我是 Java 新手,也是一般编程的新手. 假设我有一个只有静态数据的类,例如: class Foo {私有静态 int x;} 我想在不实例化任何对象的情况下使用该类.所以我希望能够做到: Foo.setX(5);Foo.getX(); 实现这个类的最佳方法是什么,我现在对接口和其他东西有点困惑. 谢谢. 解决方案 为什么不直接定义两个修改/返
..
给出以下代码: #include模板结构foo{静态std :: size_t值;};模板std :: size_t foo :: value = 0u;模板std :: size_t foo :: value = 1u + foo :: value;int main(){std
..
我目前正在学习C ++,但遇到了一些麻烦. 我已经通过使用许多 #define 开发了一个程序,但是我想改用 static const (碰撞/类型/作用域...) 所以,我现在有类似的东西: file1.hpp A类{上市:静态const std :: string MY_CONST_VAR;}; file1.cpp const std :: string A ::
..
好像我可以初始化POD静态const成员,但不能初始化其他类型: struct C {静态常量int a = 42;//好的静态常量字符串b ="hi";//编译错误}; 为什么? 解决方案 仅在整数和枚举类型中允许类定义中的语法 initializer .对于 std :: string ,它必须在类定义之外定义并在那里初始化. struct C {静态常量int a = 4
..
在C ++ 11中,我声明以下联合: 联盟U4 {字符c;我静态整数}; 当我使用-std = c ++ 11 -pedantic-errors在g ++ 4.7.0中编译此代码时,出现以下错误(仅进行了少量编辑): 错误:本地类"Union U4"不应具有静态数据成员"int U4 :: si" [-fpermissive] 错误:"U4 :: si"可能不是静态的,因为它是工会的
..
C ++中的模板类可以具有静态成员吗?由于它不存在并且在使用前是不完整的,这可能吗? 解决方案 是.静态成员在 template类{…} 块.如果已声明但未定义,则必须存在另一个提供成员定义的声明. template类has_static {//内联方法定义:提供函数的主体.静态无效的meh(){}//方法声明:带有主体的定义必须稍后出现静态void
..
struct a {static int z;} l;(在文件范围内声明a) 我无法使用初始化列表初始化z.静态结构成员是什么意思? z(name)是否也具有外部链接和公共访问权限? (我想这意味着您要给它文件范围并将其分组到一个目录下(并且可以通过对象进行公共访问)?..为什么我不能初始化?) 还....如果我在一个类中有一个静态struct成员怎么办? 解决方案
..
考虑一下,我在编译单元中有一个静态变量,该变量最终在 static 库libA中.然后,我有另一个编译单元访问此变量,该编译单元最终在 shared 库libB.so中(因此libA必须链接到libB中).最后,我有一个主要功能,也可以直接从A中访问与libB有依赖关系的静态变量和(因此,我链接到libA 和 libB). 然后我观察到,静态变量被初始化了两次,即其构造函数被运行了两次!这似
..
是否有任何方法可以设置静态变量的生命周期-即:在重置之前它保持活动状态有多长时间?我希望可能会有一个可以应用的属性. 解决方案 静态成员与类型本身相关联,而不与该类型的实例相关联.因此,它们的生命周期仅限于其创建的时间和顺序,并且不会因类型的实例而被“重置".
..
我有以下课程: 公共静态类页面{公共静态字符串LoggedOut ="LoggedOut.aspx";公共静态字符串Login ="Login.aspx";公共静态字符串Home ="Home.aspx";} 我知道我可以静态使用 Pages.Home ,但是有一个问题的原因. 我希望有一个可以这样调用的方法: string pageName = Pages.GetPage("Ho
..
我有一个带有很多控件的Form1,我需要访问/编辑另一个静态类中的控件值.由于我在表单上有很多控件,因此需要花费一些时间来定义set并从中获取控件.我想知道是否有什么方法可以在静态类中定义Form1的实例,以便可以访问此类中的Form1的所有控件? 这是静态类的结构: 公共静态类Glob{public static int int1;公共静态int Func1(){返回10;}} 我正
..
我有一个类A,它具有对象的静态向量.这些对象属于B类 class A { public: static void InstantiateVector(); private: static vector vector_of_B; } 在函数InstantiateVector() 中 for (i=0; i
..
有没有办法从静态嵌套类中引用外部类的非静态字段? 请在下面查看我的代码: public class TestComponent { String value; public void initialize(String value) { this.value = value; } public static class TestLab
..
可能重复: 为什么我们不能在内部类中使用静态方法? 我知道创建一个非静态内部类对象需要一个外部类对象,并且创建的非静态内部类对象会自动具有对该外部类对象的隐藏引用.但是为什么非静态内部类不能具有静态成员呢? Java设计人员只需要禁止在内部类的静态方法内访问非静态外部类字段,这样做会更有意义,不是吗? 如果在内部类中具有静态成员没有意义,为什么内部类可以通过继承具有静态成员的类来继承
..
我收到以下基本错误: 1> c:\ program files \ Microsoft Visual Studio 10.0 \ vc \ include \ utility(163):错误C2436:"second":构造函数初始化器列表中的成员函数或嵌套类 以及那里的许多子错误-我根本不知道在哪里看或哪里出了问题. (我知道它的功能是什么,但是我一直盯着自己为什么不起作用)
..
由于要在标头中提供的定义,我正在捕获重复的符号错误.这是最小,完整和可验证的示例中的错误.头文件和源文件如下所示. $ clang++ main.cpp x.cpp y.cpp -o main.exe 2>&1 | c++filt duplicate symbol Id::id in: /tmp/main-3f2415.o /tmp/long long-d62c28.o
..
我试图弄清楚为什么这个例子不能编译.我的理解是,如果未显式设置静态变量,则其默认值为0.在下面的五个示例中,其中四个示例的行为与我期望的一样,但是被注释掉的示例将无法编译. #include class Foo { public: static int i; static int j; }; template class Bar { pu
..
1)是否确实总是在调用main()之前初始化类的静态数据成员? 2)如果类初始化代码的静态数据成员使用其他转换单元的全局静态变量,是否可能发生“静态初始化顺序惨败"? 我在哪里可以了解更多信息?在2003年的C ++标准中找不到答案. 非常感谢. 解决方案 1)是否确实总是在调用main()之前初始化类的静态数据成员? 是的,它们总是在程序开始执行之前被初始化.
..