Tag: C#的

为什么getline跳过第一行?

在下面的代码中, getline()跳过读取第一行。 我注意到在评论“ cin >> T ”的时候,它正常工作。 但我找不出原因。 在读行之前我想读一个整数! 如何解决这个问题? #include <iostream> using namespace std; int main () { int T, i = 1; string line; cin >> T; while (i <= T) { getline(cin, line); cout << i << ": " << line << endl; i++; } return 0; }

&&优先于||

据我所知,逻辑运算符&&优先级高于|| 。 在运行代码: #include <stdio.h> int main() { int i = 1, j =1, k = 1; printf("%d\n",++i || ++j && ++k); printf("%d %d %d",i,j,k); return 0; } 正在给出的输出: 1 2 1 1 这只有在++i || ++j && ++k时才有可能 ++i || ++j && ++k是这样评估的: (++i) || (++j && ++k) 但是,根据运营商的优先规则,它应该被评估为: (++i || ++j) && (++k) 因此产出应该是: […]

从另一个脚本访问variablesC#

你能告诉我如何从另一个脚本访问脚本的variables? 我甚至在团结网站上看过所有的东西,但我仍然无法做到。 我知道如何访问另一个对象,而不是另一个variables。 这是情况:我在脚本B ,我想从脚本A访问variablesX variablesX是boolean 。 你可以帮我吗 ? 顺便说一句,我需要在脚本B中更新X的值,我该怎么做? 在Update函数中访问它如果你能给我和这些字母的例子将是伟大的! 谢谢

数组中传递给非主函数的基于范围的循环

当我尝试在gcc 4.8.2中编译下面的代码时,出现以下错误: test.cc: In function 'void foo(int*)': test.cc:15:16: error: no matching function for call to 'begin(int*&)' for (int i : bar) { ^ 还有一堆来自模板库的更深层次的内容。 #include <iostream> using namespace std; void foo(int*); int main() { int bar[3] = {1,2,3}; for (int i : bar) { cout << i << endl; } foo(bar); } void foo(int* bar) […]

用NHibernate映射一对多的最简单正确的方法

我是NHibernate和C#的新手,所以请温柔! 我有以下两个NHibernate实体: Employee { private long _id; private String _name; private String _empNumber; private IList<Address> _addresses; //Properties… } 和 Address { private long _id; private String _addrLine1; private String _addrLine2; private String _city; private String _country; private String _postalCode; //Properties } 并且它们具有从Employee到Address one-to-many关系(每个员工在其logging中可以有多个地址) 。 方便地忽略一个以上员工可以居住在同一个地址的事实。 我从内存中的对象(NHibernate实体)的angular度理解这一点。 我正在努力的是映射文件(我在这里是一个简单的例子)。 这是我到目前为止所提出的: // Intentionally left out XML and <hibernate-mapping> […]

计算(a ^ b)%MOD

我想编写计算pow(a,b)%MOD的值。 我使用C ++来编码。 但问题是b的价值可以非常大。 我知道日志(二)时间复杂性的方法。 但是,b的值可能不适合C ++的“long long”数据types。 例如b可以是10亿次斐波那契数。 精确计算这样一个大数字本身是不可能的(在时间限制内)。 PS: pow(a,b)表示a * a * a * a * … b次。 X%MOD表示MOD除以X得到的余数。

“奇怪的”C#属性语法

我刚刚在ac#项目中看到了这个: public char this[int index] 我认为自己是C#的新手; 任何人都可以帮助它是什么意思?

我如何获得使用malloc()分配的内存块的大小?

可能重复: 我怎样才能从C中的指针获取数组的大小? 有没有什么办法来以编程方式确定一个C ++数组的大小? 如果没有,为什么? 我从C风格函数中得到一个分配内存块的指针。 现在,对于debugging目的来说,知道这个指针指向的分配的内存块有多大是非常有趣的。 有没有什么比盲目超越边界挑衅exception更优雅? 在此先感谢,安德烈亚斯 编辑: 我在Windows上使用VC ++ 2005,在Linux上使用GCC 4.3 EDIT2: 我在VC + + 2005下_msize不幸的是,它在debugging模式下导致一个exception…. EDIT3: 好。 我已经尝试过上面描述的例外情况,并且它工作正常。 至less在我debugging的时候,确保在调用库之后立即退出缓冲区边界。 奇迹般有效。 它只是不够优雅,并不适用于生产代码。

为什么我不能在debugging器中编辑一个包含匿名方法的方法?

所以,每次我写一个lambdaexpression式或者匿名方法的时候,我都不太清楚 ,我不得不重新编译并重新启动整个应用程序或者unit testing框架来修复它。 这是非常烦人的,而最终我浪费的时间比通过使用这些结构所节省的时间更多。 尽pipeLinq和lambdas是我最喜欢的C#特性之一,但是如果可以的话,我尽量远离它们,这太糟糕了。 我想为什么是这样,有一个很好的技术理由,也许有人知道? 此外,有没有人知道它是否会在VS2010中修复? 谢谢。

封装私有成员作为一个属性和定义一个没有私有成员的属性之间有什么区别?

封装一个私人成员之间有什么区别(性能,内存…等) private int age; public int Age { get { return age; } set { age = value; } } 并定义一个像这样的属性 public int Age { get ; set ; }