关于c–在取消引用指针的地址上在VisualStudio2005中设置数据断点和取消对指针的引用的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于asp.net–如何在VisualStudi
关于c – 在取消引用指针的地址上在Visual Studio 2005中设置数据断点和取消对指针的引用的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于asp.net – 如何在Visual Studio 2010中设置Umbraco cms?、c – typedefing枚举问题.和visual studio 2005中的bug、c – 如何在Visual Studio 2010中设置单独的Boost测试项目、c – 引用取消引用的指针的地址是否与指针的地址相同?等相关知识的信息别忘了在本站进行查找喔。
本文目录一览:- c – 在取消引用指针的地址上在Visual Studio 2005中设置数据断点(取消对指针的引用)
- asp.net – 如何在Visual Studio 2010中设置Umbraco cms?
- c – typedefing枚举问题.和visual studio 2005中的bug
- c – 如何在Visual Studio 2010中设置单独的Boost测试项目
- c – 引用取消引用的指针的地址是否与指针的地址相同?
c – 在取消引用指针的地址上在Visual Studio 2005中设置数据断点(取消对指针的引用)
我可以在保留成员的值上设置数据断点 – 这本身并不是很有帮助.当断点被命中时,我想要做的是取消引用存储在reserved中的指针,并在该指针指向的内存上设置一个新的数据断点.当内存设置为已知值时,我希望VisualStudio中断.
我知道如何从宏设置断点,以及如何让Visual Studio在断点时从断点调用该宏,但我不知道是否可以将指针值传递给宏以便它可以设置断点在正确的地址.用户界面没有提供这样做的方法.
有没有办法让宏访问有关正在运行的程序的信息,并执行评估全局变量或其他表达式的操作?如果我从宏中获得对运行代码(在断点期间)的那种编程访问,我可以完成我正在尝试做的事情.
解决方法
Dim e As EnvDTE.Expression e = DTE.Debugger.GetExpression("<my expression>",True) If e.IsValidValue Then ... use e.Value to do something End If
您在e.Value中获得的值正是您在观察窗口中看到的字符串,因此您可能需要将它拉开.您可以使用Expression对象上还有许多其他属性.见MSDN documentation.
asp.net – 如何在Visual Studio 2010中设置Umbraco cms?
解决方法
http://blog.leekelleher.com/2008/08/20/setting-up-visual-studio-to-work-with-umbraco/
http://our.umbraco.org/wiki/codegarden-2009/open-space-minutes/working-in-visual-studio-when-developing-umbraco-solutions
c – typedefing枚举问题.和visual studio 2005中的bug
struct A { enum E { FirsT,SECOND }; }; struct B { typedef A::E E; }; int main() { B::E e0 = A::FirsT;//OK (this case is clear for me) B::E e1 = A::E::FirsT;//OK (this case is clear for me as well) B::E e2 = B::FirsT;//Compile Error: FirsT is not member of B (Why isn't this allowed? Don't we lose meaning of typedef of enums in this case?) B::E e3 = B::E::FirsT;//Error of compiler (If there were no bug in visual studio 2005 compiler,would this code work?) return 0; }
附:代码中的问题.
更新:实际上该错误已在VS2010中修复.
解决方法
在C 03中,只有第一行(B :: E e0 = A :: FirsT;)是正确的,其他三个是错误:
B::E e1 = A::E::FirsT; // error: ‘A::E’ is not a class or namespace B::E e2 = B::FirsT; // error: ‘FirsT’ is not a member of ‘B’ B::E e3 = B::E::FirsT; // error: ‘B::E’ is not a class or namespace
在C 0x中,只有第二行(B :: E e2 = B :: FirsT;)是一个错误(FirsT仍然不是B的成员!),其他三个是正确的.
不是“为什么?”的答案,只是指出手头有两个不同的问题.影响e1和e3的问题的基本原理可能在C 0x工作文件中有所解释.
改变是3.4.3 [basic.lookup.qual] / 1的第一句话,现在说
The name of a class or namespace member or enumerator can be referred to after the :: scope resolution operator
但它曾经说过
The name of a class or namespace member can be referred to after the :: scope resolution operator
c – 如何在Visual Studio 2010中设置单独的Boost测试项目
我在这里和互联网上的其他地方已经阅读了很多关于这个主题的内容,人们似乎建议在你的解决方案中为你的测试提供第二个项目.
很好,听起来不错.但是我实际上没有设置它.我还没有找到解决这个问题的最佳方法的明确解释.
我是否需要使用项目参考来使我的单元测试项目参考我的主项目?
如果是这样,我还需要添加Include&我的主项目的源目录在我的单元测试项目的属性中?如果是这样,首先使用项目参考有什么好处?
我是否必须让我的主项目输出一个库以供我的单元测试项目链接?再一次,我认为项目参考会使这不必要,但似乎我并不真正理解项目参考.
如果可能的话,我可以获得一个非常白痴的证据,一步一步的程序,在VS2010的主要项目旁边设置一个Boost测试单元测试项目?
我会更好地使用这里列出的方法(一个项目,不同的配置来构建测试或实际的项目exe):
http://blog.yastrebkov.com/2010/07/boost-test-setup-and-usage.html
非常感谢,
解决方法
>创建一个新的C项目.我总是选择具有预编译头的Win32可执行文件.我有一个命名约定,所有使用Boost.Test的测试项目都以“tests.boost.testee_name …”开头.
>在“stdafx.h”中,添加< boost / unit_test.hpp>的include.并定义BOOST_TEST_MODULE(我总是选择项目名称).此外,添加此项目所需的外部组件的所有其他包含,例如,其他boost库,stl头等.这会导致编译时间大大加快.
>被测者必须是图书馆(动态或静态).所以“添加引用”到所有必需的依赖项.您当然可以测试仅限标头的库,在这种情况下不要添加引用.
>根据Boost.Test手册,将源文件添加到测试项目中.我强制执行的约定是每个文件一个BOOST_FIXTURE_TEST_SUITE.
>为方便起见,我有一个为升压单元测试量身定制的定制属性表,我将其添加到每个升压测试项目中.其中它包含一个构建后事件,它运行测试.
我必须补充一点,最近,我使用Visual Studio 2012切换到MSTest,这允许更舒适的方式来管理测试和测试结果.然而,对于软件中最重要的部分,我仍在编写增强测试,以确保使用较旧的工具集和可能的其他平台的正确性.
干杯,
保罗
c – 引用取消引用的指针的地址是否与指针的地址相同?
或者写在代码中,以下断言保证始终保持正确吗?
SomeType *ptr = someAddress; SomeType &ref = *ptr; assert(&ref == ptr);
解决方法
引用只不过是它所指的类型的别名.它没有单独的存在,它总是被绑定到它指的是.
关于c – 在取消引用指针的地址上在Visual Studio 2005中设置数据断点和取消对指针的引用的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于asp.net – 如何在Visual Studio 2010中设置Umbraco cms?、c – typedefing枚举问题.和visual studio 2005中的bug、c – 如何在Visual Studio 2010中设置单独的Boost测试项目、c – 引用取消引用的指针的地址是否与指针的地址相同?等相关内容,可以在本站寻找。
本文标签: