Tag: 构造

比较和对比轻量级标记语言

请确定最stream行的轻量级标记语言,并比较它们的优缺点。 这些语言应该是技术散文的通用标记,例如文档(例如,Haml不计数)。 另请参阅: Markdown与ReStructuredText

结构构造函数:“控制返回给调用者之前,必须完全分配字段”。

这里是我想写的一个结构: public struct AttackTraits { public AttackTraits(double probability, int damage, float distance) { Probability = probability; Distance = distance; Damage = damage; } private double probability; public double Probability { get { return probability; } set { if (value > 1 || value < 0) { throw new ArgumentOutOfRangeException("Probability values must be in the range […]

琐碎与标准的布局与POD

用通俗的话来说,平凡的types,标准的布局types和POD有什么区别? 具体来说,我想确定new T是否与任何模板参数T new T()不同。 我应该select哪种types的特征is_trivial , is_standard_layout和is_pod ? (作为一个侧面的问题,这些types的特性中的任何一个都可以在没有编译器的情况下实现?

一个“空的”构造函数或析构函数是否和生成的函数一样?

假设我们有一个(玩具)C ++类,如下所示: class Foo { public: Foo(); private: int t; }; 由于没有定义析构函数,因此C ++编译器应该为Foo类自动创build一个。 如果析构函数不需要清理任何dynamic分配的内存(也就是说,我们可以合理地依赖编译器给我们的析构函数),将会定义一个空的析构函数。 Foo::~Foo() { } 做与编译器生成的一样的东西? 什么是空的构造函数 – 也就是Foo::Foo() { } ? 如果有差异,它们在哪里存在? 如果没有,是一种比另一种更受欢迎的方法?

你什么时候需要显式的调用一个超类的构造函数?

所以说我有一个扩展超类的子类。 在什么情况下,我需要显式键入super()来获取超类构造函数来运行? 我在一本关于抽象类的书中看到了一个例子,当它用一个非抽象的子类扩展它的时候,子类的默认构造函数是空的,并且有一个注释说超类的默认构造函数将被调用。 同时我也在这里看到有些人的问题没有明确地调用super() 。 区别是从子类的默认/非默认构造函数调用超类的默认/非默认构造函数?

如何在构造函数中初始化一个常量字段?

想象一下,我有一个C ++类Foo和一个类Bar,必须使用构造函数创build一个Foo指针,并且该指针在Bar实例生命周期中保持不变。 什么是正确的做法呢? 事实上,我以为我可以写下面的代码,但它不编译.. class Foo; class Bar { public: Foo * const foo; Bar(Foo* foo) { this->foo = foo; } }; class Foo { public: int a; }; 任何build议是值得欢迎的。

在构造函数警告中泄漏这个

我想避免(大部分)Netbeans 6.9.1的警告,我有一个'Leaking this in constructor'警告”的问题。 我明白这个问题,在构造函数中调用方法并传递“ this ”是危险的,因为“ this ”可能没有被完全初始化。 在单例类中修改警告很容易,因为构造函数是私有的,只能从同一个类中调用。 旧代码(简体): private Singleton() { … addWindowFocusListener(this); } public static Singleton getInstance() { … instance = new Singleton(); … } 新代码(简体): private Singleton() { … } public static Singleton getInstance() { … instance = new Singleton(); addWindowFocusListener( instance ); … } 如果构造函数是公共的,并且可以从其他类调用此修复程序不起作用。 如何修复下面的代码: public class […]

C#构造函数链? (怎么做?)

我知道这应该是一个超级简单的问题,但我一直在为这个概念挣扎。 我的问题是,你如何链接在C#构造函数? 我在我的第一个OOPclass,所以我只是在学习。 我不明白构造函数链如何工作或如何实现它,甚至为什么比没有链的构造函数更好。 我会感谢一些例子的解释。 那么如何链接他们呢? 我知道两个它是: public SomeClass this: {0} public SomeClass { someVariable = 0 } 但是你怎么用三,四等等呢? 再次,我知道这是一个初学者的问题,但我很难理解这一点,我不知道为什么。