Tag: C#的

为什么要学习C ++

大家一直告诉我要学习C ++。 不用左右摇动语言,有人能说出一些相关的原因,为什么我今天应该学习C ++? 请注意,我绝不会对C ++说任何苛刻的话。 我只想知道为什么我应该掌握它作为一个程序员,而不是其他强大的语言。

为什么不是arr 相当于-2 ?

#include <iostream> using namespace std; int main() { int arr[3] = { 10, 20, 30 }; cout << arr[-2] << endl; cout << -2[arr] << endl; return 0; } 输出: 4196160 -30 这里arr[-2]超出范围且无效,导致未定义的行为 。 但-2[arr]评估为-30 。 为什么? 不是arr[-2]等于-2[arr] ?

C程序员开始编写C ++的坏习惯是什么?

最近的一个讨论结束了对程序员的坏习惯的嘲笑,他们开始使用另一种语言进行编程时已经暴露在语言之下。 最好的例子是一个Pascal程序员在开始写C时开始#define begin {和#define end } 目标是在开始使用C ++时尝试捕捉C程序员的坏习惯。 告诉大家不要碰到你遇到的事情 。 一个build议,请回答,以尝试达到一种最好的。 对于那些对好习惯感兴趣的人,可以看看这个问题的答案。

C ++ 11模板别名作为模板模板参数导致不同的types?

我们在编译以下源代码时观察到一个奇怪的行为: template<template<class> class TT> struct X { }; template<class> struct Y { }; template<class T> using Z = Y<T>; int main() { X<Y> y; X<Z> z; z = y; // it fails here } 这是一个从模板别名的c ++ 11标准提案中稍作修改的例子: http : //www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2258.pdf (请参阅第4页)还要注意,提案“声明y和z是同一types”。 因此,在我们的解释中,应该可以从y分配(或复制构造)z。 但是,这个代码不能用gcc 4.8.1和clang 3.3编译。 这是编译器中的错误还是我们误解了标准? 在此先感谢,craffael等;) PS Clang错误信息是: error: no viable overloaded '=' note: […]

在Eclipse中debuggingPython扩展

我有一个Python扩展,我已经成功地在Windows,OSX和Linux上构build和使用。 我现在需要能够debugging这个Python扩展。 我不喜欢在命令行使用gdb,所以我真的想在Eclipse中使用它。 首先,我尽我所能按照http://www.heikkitoivonen.net/blog/2008/07/21/debugging-python-extension-written-in-c-with-eclipse/中的说明操作,而我将Python源文件夹以及作为源文件夹的python扩展代码文件夹添加到空项目中。 因为在linux上debugging所需的东西比较容易,所以我开始在Ubuntu中进行debugging开发。 一旦我得到了python的debugging版本(让我们称之为python_d),我用我的扩展名运行了setup.py python_d setup.py build 这也应该产生扩展模块的debugging版本。 我已经validation了通过在Eclipse中打开扩展作为应用程序来导出符号,我可以看到与Python共享对象链接的源代码。 现在,如果我在Eclipse中使用我的代码的文件夹创build另一个项目,并在用于创build扩展的源代码中添加一个断点,它不会停在断点处。 我在这里完全有可能失去一些相当重要的东西,但是对于我来说,我无法做到这一点。 问题的症结在于: 如何让Eclipse停止在Python扩展模块的断点处?

如何将一个button添加到Visual Studio Intellisense

我想在Visual Studio的IntelliSense返回的选项列表顶部添加一个button。 当button被点击时,我的自定义代码将被执行(这将导致popup窗口出现)。 我称之为“button”,因为当用户单击该项目时,我想要一个popup窗口出现,而不是完成用户input的正常IntelliSense动作。 例如,当我们input一个类名到文本编辑器中时,通常静态属性和静态方法将出现在IntelliSense中。 但是我想添加另一个项目到列表的顶部。 这个项目应该出现在智能感知列表的顶部,不pipeinput/内容是什么导致智能感知出现。 该项目将永远不会改变。 这是可能的,如果是这样,你能提供一些方向,我应该如何实现这一目标?

如何启用cookie在phantomjsdriverseleniumc#?

这是我的代码 – case BrowserType.PhantomJS: var service = PhantomJSDriverService.CreateDefaultService(Path.Combine(_rootPath, @"Packages\")); var cookieFilePath=Path.Combine(_rootPath, @"Packages\cookie.txt"); if (!File.Exists(cookieFilePath)) File.Create(cookieFilePath); var phantomjsoptions = new PhantomJSOptions(); driver = new PhantomJSDriver(service,phantomjsoptions); var cookieJar = driver.Manage().Cookies; driver.Navigate().GoToUrl(SeleniumConfiguration.Current.BaseURL); cookieJar.AddCookie(new Cookie("x", "12345")); return driver; 基本上问题是,我无法login到我的testing应用程序,因为我得到一个错误说 – “您的浏览器设置为阻止cookies”,我试过一切,但我似乎无法得到解决scheme….我该怎么办? 请帮助我在这里。让我知道是否有一些细节丢失。

如何find斜坡的开始/结束,也许用草图?

我有一堆斜坡,我想知道的开始和结束点(以及在多个开始/终点的情况下,我想知道他们如何连接)。 我目前得到这些 List<TransitionPoint> ret = new List<TransitionPoint>(); FilteredElementCollector collector = new FilteredElementCollector(doc); ICollection<Element> ramps = collector.OfCategory(BuiltInCategory.OST_Ramps).ToElements(); foreach (var ramp in ramps) { //what goes here? } 这些斜坡包含以下属性: Type Comments Ramp Max Slope (1/x) Category URL Design Option Type Name Ramp Material Function Manufacturer Family Name Model Keynote Type Image Text Size Shape Text Font Maximum […]

Breeze Sharp – 展开不能用lambdaexpression式工作

当我试图通过lambda扩展一个导航属性,如下所示: query = query.Expand(x => x.Dealers); 我的查询失败 内部例外 内部exception消息: expression式“x => x.Dealers”不是导航path的有效expression式。 lambdaexpression式主体中唯一受支持的操作是MemberAccess和TypeAs。 expression式必须至less包含一个MemberAccess,并且不能以TypeAs结尾。 然而,当我试图通过一个string参数进行扩展: query = query.Expand("Dealers"); 一切似乎正常工作。 我的“地区”微风客户实体: public class Region : BaseEntity { public Region(); public NavigationSet<Dealership> Dealers { get; set; } public string Name { get; set; } public Region Parent { get; set; } public int? ParentId { get; set; […]

Asp.net Web API返回非描述性错误500

在我的设置中,如果Web API请求发生任何错误,我将收到错误500。 例如这个简单的代码。 public IQueryable<Article> Get(){ throw new Exception("error"); return db.Articles; //yeah i know.. unreachable, not the point } 我期望的(以及常规的MVC控制器中会发生什么): 我得到(在Web API中): 我的网页configuration: <customErrors mode="Off"/> <compilation debug="true" targetFramework="4.5"> //under webserver <httpErrors errorMode="detailed"/> 应用程序池在集成模式下运行4.0。 启用32位应用程序。 我怎样才能得到在浏览器中出现的错误? 或者至less在debugging过程中?