草庐IT

dynamics-ax-2012

全部标签

c++ - "dynamic_cast"之后的 NULL 指针实际上可以取消引用吗?

以下代码编译正确并得到神秘的输出:specialInvestmentfunction00000000(环境:C++VS2010)#include#includeusingnamespacestd;classSecurity{public:virtual~Security(){}};classStock:publicSecurity{};classInvestment:publicSecurity{public:voidspecial(){cout(p)->special();cout(p)怎么可能呢?取消引用NULL指针并获得“正确”输出而不是崩溃?是VS2010的特殊“特性”吗?现在

c# - Visual Studio 2010 项目到 Visual Studio 2012

我的friend刚刚向我发送了一个VS2010项目,其中包含2个解决方案:一个包含一个CPP文件,另一个包含C#WPF项目(一个XAML和一个CS)。使用VS2010在他的计算机上一切正常。当他构建并执行项目时,主XAML窗口会按预期显示。当我尝试在我的计算机上使用VS2012执行相同操作时,我在构建项目时没有遇到任何问题。但是,当我运行它时,什么也没有发生。我在C#代码中添加了一些断点,我意识到代码可以运行,但窗口从未出现。因此,一旦执行了代码,应用程序就会退出,而不是在XAML界面中等待用户输入。我以前从未遇到过这个问题,通常从VS2010到VS2012工作得很好。在这里,一切似乎

c++ - 带有 Visual Assist X 和 Doxygen 的 Visual Studio 2012 IntelliSense

我曾经以的风格在我的头文件中写入简单的注释//Returnsanewstringinwhichalloccurrencesofaspecifiedstringinthe//currentinstancearereplacedwithanotherspecifiedstring.//-strSubject:Thestringtoperformthereplacementon.//-strOldValue:Thestringtobereplaced.//-strNewValue:ThestringtoreplacealloccurrencesofstrOldValue.staticRUNT

c++ - 在 Visual Studio 2012 中初始化 vector 的静态常量 vector

我正在尝试在VisualStudio2012中创建一个staticconstvectorofconstvectorsofints(必须有更好的方法),但我无法找出正确的语法来初始化它。我相信2012年使用的C++版本不允许初始化器,但我不知道还有什么方法可以完成我想要的。我在2013年尝试了以下方法,它似乎可以编译:.h:staticconststd::vector>PartLibrary;.cpp:conststd::vector>Parts::PartLibrary{std::vector{29434},//1std::vector{26322},//2...}但是,当我在2012

c++ - 在 Visual Studio 2010/2012 和 Release 模式下使用 SSE 内部函数时结果不正确

我正在使用SSE内在函数计算数组的均值和方差。基本上,这是可以在以下程序中说明的值及其平方的总和:intmain(intargc,constchar*argv[]){unionu{__m128m;floatf[4];}x;//Allocatememoryandinitializedata:[1,2,3,...stSize+1]constsize_tstSize=1024;float*pData=(float*)_aligned_malloc(stSize*sizeof(float),32);for(size_ts=0;s现在,当我在Debug模式下编译和运行程序时,我得到以下(正确的)

c++ - 为什么 "dynamic exception"保证会导致开销?

在C++11中,这已被弃用:voidfoo()throw();并替换为voidfoo()noexcept;在thisarticle据解释,这样做的原因(除其他外,归结为同一件事)是C++exceptionspecificationsarecheckedatruntimeratherthanatcompiletime,sotheyoffernoprogrammerguaranteesthatallexceptionshavebeenhandled.虽然这对我来说确实有意义,但我不明白为什么首先要动态检查throw(),或者为什么noexcept不提供异常保证除了调用std::termin

c++ - 通过继承层次结构进行 dynamic_casting 是不好的做法吗?

我有以下数据结构:classElement{std::stringgetType();std::stringgetId();virtualstd::vectorgetChildren();}classA:publicElement{voidaddA(constA*a);voidaddB(constB*b);voidaddC(constC*c);std::vectorgetChildren();}classB:publicElement{voidaddB(constB*b);voidaddC(constC*c);std::vectorgetChildren();}classC:publi

c++ - 哪些因素使迭代器在 Debug模式下如此缓慢(VC++ 2012)

我有一个包含10000个随机数(mod100)的vector,我想计算其中两个数字之和为100的对数。我写了以下内容:autonoPairsSumTo100=0;constautoitEnd=end(myNums);for(autoit1=begin(myNums);it1!=itEnd;++it1){for(autoit2=it1;it2!=itEnd;++it2){if(*it1+*it2==100){noPairsSumTo100++;}}}在我的机器上,这需要大约21.6秒才能在Debug模式下运行。如果我设置_ITERATOR_DEBUG_LEVEL=0(将_SECURE_S

c++ - 如何在 C++ 中执行 Y = aX + Y

我正在尝试使用C++STL容器进行矩阵运算。有两个大小为m,n(m>n)的vectorY和X。我想将X与标量相乘并从Y中的给定索引添加它。在此过程中我不想转换X(不想使用std::transform)。实际上,X是矩阵DPtr中的列。下面给出了我试过的一个版本。std::vectorD(&DPtr[index1],&DPtr[index1]+size_C);std::transform(D.begin(),D.end(),D.begin(),std::bind2nd(std::multiplies(),val1*val2));std::transform(D.begin(),D.end

c++ - (Swig to python)导入错误:dynamic module does not define init function

我正在尝试通过swig将我的C++代码移植到Python。当我完成py、pyd、cxx和lib文件的构建时,在Python(命令行)下,我键入“模块Dnld”,它显示->导入错误:动态模块未定义初始化函数。以下是我的代码,进一步:添加我的构建步骤以避免误解,谢谢MarkTolonen文件->新建->项目->Windows控制台应用程序->选择DLL和空项目(无unicode)将我的SerialComm文件夹添加到项目中(包括DownloaderEngine.hSerial.hPortEnumerator.h等)。配置属性->c/c++->附加包含目录->C:\Python27\incl