昨天我和同事讨论了什么是首选的错误报告方法.主要是我们讨论了异常或错误代码的使用,以报告应用程序层或模块之间的错误.
您使用什么规则来决定是否抛出异常或返回错误代码以进行错误报告?
似乎C#3.0对象初始化程序语法允许在存在无参数构造函数时排除构造函数中的打开/关闭括号对.例:
var x = new XTypeName { PropA = value, PropB = value };
Run Code Online (Sandbox Code Playgroud)
相反:
var x = new XTypeName() { PropA = value, PropB = value };
Run Code Online (Sandbox Code Playgroud)
我很好奇为什么构造函数打开/关闭括号对后面是可选的XTypeName
?
注意:这不是关于如何使用内联函数或它们如何工作的问题,更多的是为什么它们按照它们的方式完成.
类成员函数的声明不需要定义函数inline
,它只是函数的实际实现.例如,在头文件中:
struct foo{
void bar(); // no need to define this as inline
}
Run Code Online (Sandbox Code Playgroud)
那么,为什么一类功能的内嵌实施有是在头文件?为什么我不能把内联函数放在.cpp
文件中?如果我在哪里尝试将内联定义放在.cpp
文件中,我会得到一个错误:
error LNK2019: unresolved external symbol
"public: void __thiscall foo::bar(void)"
(?bar@foo@@QAEXXZ) referenced in function _main
1>C:\Users\Me\Documents\Visual Studio 2012\Projects\inline\Debug\inline.exe
: fatal error LNK1120: 1 unresolved externals
Run Code Online (Sandbox Code Playgroud) 我知道Java和C#中不允许多重继承.很多书只是说,不允许多重继承.但它可以通过使用接口来实现.没有讨论为什么不允许它.任何人都可以告诉我为什么不允许它?
与同事就此进行了友好的辩论.我们对此有一些想法,但想知道SO人群对此有何看法?
一些流行的编程语言使用月份编号,这个编号是1 - JavaScript会想到,Java也是如此,如果内存服务,则C是另一种.我有一些问题:
对于C++开发人员来说,它看起来很奇怪 在C++中,我们用来标记参数,const
以确保它的状态不会在方法中改变.还有其他C++特定的原因,比如const ref
为了传递ref而传递,并确保状态不会被更改.但是为什么我们不能在C#中标记为方法参数const?
为什么我不能像下面那样声明我的方法?
....
static void TestMethod1(const MyClass val)
{}
....
static void TestMethod2(const int val)
{}
....
Run Code Online (Sandbox Code Playgroud) global关键字的效用是什么?
是否有任何理由更喜欢一种方法?
方法1:
function exempleConcat($str1, $str2)
{
return $str1.$str2;
}
Run Code Online (Sandbox Code Playgroud)
方法2:
function exempleConcat()
{
global $str1, $str2;
return $str1.$str2;
}
Run Code Online (Sandbox Code Playgroud)
什么时候使用有意义global
?
对我来说,它似乎很危险 ......但它可能只是缺乏知识.我感兴趣的是记录(例如代码示例,文档链接......)技术原因.
提前致谢!
这是关于这个主题的一个很好的一般性问题,我(@Gordon)正在提供奖励以获得更多答案.无论您的答案是否与我的答案一致或给出不同的观点都无关紧要.由于该global
主题时不时出现,我们可以使用一个很好的"规范"答案来链接.
一个声明,检查某些内容是否为真,如果没有则打印给定的错误消息并退出
R中的一种基本数据类型是因子.根据我的经验,因素基本上是一种痛苦,我从不使用它们.我总是转换为角色.我觉得奇怪的是我错过了一些东西.
是否有一些重要的函数示例使用因子作为分组变量,其中因子数据类型变得必要?我应该使用哪些因素?
language-design ×10
c# ×4
r ×2
assert ×1
assertions ×1
c++ ×1
c++-faq ×1
date ×1
immutability ×1
initializer ×1
inline ×1
internals ×1
java ×1
php ×1
r-factor ×1
readonly ×1
syntax ×1
theory ×1
types ×1