首页 文章
  • 1 votes
     answers
     views

    将POD结构转换为派生类型

    在处理遗留项目时,我遇到了以下模式:POD结构用于通过网络传输数据 . struct PODType { // some data int data; }; 在接收器侧,数据被接收到POD类型的对象中 . 稍后,从PODType派生一个类,并将接收到的对象与C样式强制转换为派生类,以使用一些访问数据的方法 . class DerivedFromPOD: public PODTyp...
  • 2 votes
     answers
     views

    什么's going on in the '偏移'宏?

    Visual C 2008 C运行时提供运算符'offsetof',实际上宏定义如下: #define offsetof(s,m) (size_t)&reinterpret_cast<const volatile char&>((((s *)0)->m)) 这允许您计算类 s 中成员变量 m 的偏移量 . 我在本声明中不明白的是: 为什么我们将 m 投射到...
  • 2 votes
     answers
     views

    c将void *转换为int错误

    我是C / C的新手,我正在尝试使用定义数据结构PDS的C库,并提供访问数据的方法 . 这是我用来访问它的函数: pdsGetNext (PDS *pds,char **pKey,PDStype *pT,size_t *pS,void **pD); 它基本上返回元素的键,元素的类型,元素的大小和元素的实际数据 . void **pD 在文档中描述如下:"Pointer to an...
  • 0 votes
     answers
     views

    查找char指针,int和float的结尾

    我有一个函数将传递一个void指针 . 该指针可以是int,char或float . 我知道将通过关联值传递给我的数据类型 . 例如,下面是我的函数的样子: void * (int type, void * data); 如果我传递的void指针最初是一个char类型,并且我将它转换回char类型,有没有办法确定与该指针相关联的字节数?例如,如果我的函数调用如下: f(1, (void *)&q...
  • 3 votes
     answers
     views

    C无效指针

    我在想,为什么不能有一个不是指针的void数据类型? 当然,你可以通过拥有可以超越整个确定尺寸的东西 void4 void8 void32 然后只允许将一个void数据类型“强制转换”为另一个类,如果它的大小等于或小于类的大小 . 有什么东西我不知道,或者C委员会只是认为这是不好的做法? 编辑: 我没有很好地解释自己,所以我将举例说明它的用法: main() { /* Le...
  • 0 votes
     answers
     views

    警告C4244:'=':从'DATE'转换为'int',可能导致数据丢失

    在将VC 6.0开发的代码迁移到Visual Studio 2008时,我收到了此警告 . 我尝试使用 static_cast 进行投射,但即便如此,我也无法修复此警告 . 这对我来说很难解决 . CCandidateDataVector::iterator it; int iDays; DATE m_datePolicyStart; iDays = (*it).m_datePolicyStart...
  • 5 votes
     answers
     views

    DbSet.Cast <TEntity>()错误:无法为非泛型DbSet为'Entity'类型的对象创建DbSet <IEntity>

    Version Info: 我正在使用C#4.5,Entity Framework 6.0和MEF . Code and Unit Test 我创建了一个测试项目来解释这个问题:https://skydrive.live.com/redir?resid=E3C97EC293A34048!2234 请打开UnitTest项目并尝试运行TestIfItWorks()单元测试 . Problem 我想将...
  • 562 votes
     answers
     views

    为什么使用static_cast <int>(x)而不是(int)x?

    我听说 static_cast 函数应该优先于C风格或简单的函数式转换 . 这是真的?为什么?
  • 0 votes
     answers
     views

    错误的值 - 将大字符分解为int数组

    我有一个非常大的字符串,其中包含2位数字和空格,顺序为xx xx xx ... etc' . 我正在尝试将每个数字转换为数字到int并存储在20x20 int数组中 . 对于这个任务,我使用memcpy来表示字符串的前2位数字,atoi从char转换为int和我编写的内部函数,它将每个字符串“left”移动到圆形 . 它适用于类似60号码的东西,然后在程序结束时得到错误的号码 . 这是代码: #i...
  • 4 votes
     answers
     views

    C型铸造[重复]

    可能重复:什么时候应该使用static_cast,dynamic_cast和reinterpret_cast? 直到几天前,我总是在C中使用C风格类型的铸造,因为它看起来效果很好 . 我最近发现在C中使用C非常糟糕.. 我之前从未真正使用C版,所以我想知道是否有人能告诉我(最好用他们自己的话说)static_cast,reinterpret_cast和const_cast之间有什么区别? co...
  • -2 votes
     answers
     views

    C喜欢vs C喜欢演员? [重复]

    可能重复:常规演员与static_cast与dynamic_cast 自从我编程以来,我一直在使用类似C的演员: class* initializedClassInstance; void* test = (void*) initializedClassInstance; 而且我被告知某个地方我应该习惯于C演员(static_cast,dynamic_cast ......) . 是否有理由...
  • 0 votes
     answers
     views

    复制期间的SQL转换类型

    我有一堆csv格式的人口普查表,我想带进postgresql数据库 . 所有字段都是字符串,尽管它们代表数值 . 我通过创建一个包含数字类型的表然后执行COPY表'myfile.csv'并在第一个字段中出错来测试了这一点 . 当我将第一个字段更改为VARCHAR并再次运行时,错误命中第二个字段 . 这是我的陈述: create table race( Id2 varchar(20), Wh...
  • 1 votes
     answers
     views

    Scala Bean强制::缺少LINQ

    Update Play 2.0的Scala版本将以ANORM为特色,这与Querulous类似,因为它们都是JDBC包装器而不是ORM . 这是使用解析器组合器的ANORM查询强制: SQL(&quot;&quot;&quot; select * from Country c join CountryLanguage l on l.CountryCode = c....
  • 0 votes
     answers
     views

    SSRS中的日期时间转换/日期差异

    我有一个SSRS报告,我在下面使用查询 .(此查询在SQL Server中工作正常,问题仅在SSRS报告中) - DECLARE @Range Number = 10; SELECT * FROM TBL1 WHERE USERNAME = 'MIKE' AND(@Range = '10'和Convert(datetime,MyDate,120)&lt;= GETDATE())或(@Range ...
  • 2 votes
     answers
     views

    如何将指向c结构的指针强制转换为jna结构

    我想帮助将一个C结构的指针转换为jna结构 . 我正在使用jna从dll接收回调函数,该函数有一个参数,它是一个指向C结构的指针,当我试图将指针转换为jna结构时,我得到了错误的结构值 . 这是C结构: typedef struct { int x; int y; }Point; Point *gpt; typedef struct { int x; int y; ...
  • 1 votes
     answers
     views

    在程序中发生参数关联时,FORTRAN隐式转换

    我正在使用fortran一段时间,但在fortran中使用子程序时我没有检查隐式转换问题 . 例如 subroutine printa(a) double precision :: a ... endsubroutine printa 当我调用子程序时 call printa(1) 我看到错误#6633:实际参数的类型与伪参数的类型不同 . [1]我知...
  • 1 votes
     answers
     views

    如何在应用程序开始时分配所有内存,然后在整个过程中对其进行相应的类型化

    我需要预先分配我的应用程序将使用的所有内存 . 然后每当需要使用我需要进行计算的数据覆盖该内存时 . 在进行任何计算之前必须首先分配内存,因为我正在尝试并行运行多线程CUDA算法,如我在此处的问题(Multi-Threaded CPU CUDA application not asynchronous when calling CudaFree)中所述 . 我以为我可以将所需的所有内存分配为字节指...
  • 11 votes
     answers
     views

    如何解决这个Java类型的安全警告?

    Map session = ActionContext.getContext().getSession(); session.put(&quot;user&quot;, user); 此代码生成警告:类型安全:方法put(Object,Object)属于原始类型Map . 应参数化对泛型类型Map &lt;K,V&gt;的引用 . Map&lt;String, Serializable&gt; ...
  • 101 votes
     answers
     views

    在java中将double转换为整数

    在Java中,我想将double转换为整数,我知道如果你这样做: double x = 1.5; int y = (int)x; 你得到y = 1 . 如果你这样做: int y = (int)Math.round(x); 你可能会得到2.但是,我想知道:因为整数的双重表示有时看起来像1.9999999998或其他东西,是否有可能通过Math.round()创建一个双重表示仍然会导致截断的数字...
  • 21 votes
     answers
     views

    关于C中类型惩罚的意见?

    我很好奇C中的类型惩罚指针/数组的约定 . 这是我目前的用例: 通过将二进制数据块视为32位整数数组(我们知道它的总长度是4的倍数),然后将所有值相加并忽略溢出,计算二进制blob数据的简单32位校验和 . 我希望这样的函数看起来像这样: uint32_t compute_checksum(const char *data, size_t size) { const uint32_t ...
  • 0 votes
     answers
     views

    通用列表的转换问题

    在下面的代码编译错误发生但我不明白为什么 . class RealMock&lt;TEntity&gt; : DataContext { public RealMock():base(&quot;&quot;) { } public List&lt;TEntity&gt; inMemoryDataStore = new List&lt;TEntity&gt;()...
  • 3 votes
     answers
     views

    在c中转换volatile变量

    我想我有一个棘手的问题,但我相信你能帮助我 . 假设我有这样的函数: char my_function (int example); 我在多种情况下使用此函数,有时它接收的参数是volatile变量,有时是非易失性变量 . 当我编译可以通过使用强制转换轻松删除的代码时,这会引起一些警告,但我想了解哪个是更安全的场景以及为什么 . 场景1: 原型: char my_function (int ex...
  • 4 votes
     answers
     views

    在R:dcast函数中,传递列名称(再次!)

    给出具有id变量 a 和 b 的半长格式的df以及列 m1 和 m2 中的测量数据 . 数据类型由变量 v (值var1和var2)指定 . set.seed(8) df_l &lt;- data.frame( a = rep(sample(LETTERS,5),2), b = rep(sample(letters,5),2), v = c(rep(&quot;va...
  • 3 votes
     answers
     views

    二叉搜索树实例

    我通过使用树接口和递归创建二进制搜索树(我知道使用节点类我可以实现相同)提供添加和检查元素是否在二进制搜索树中的方法 . 我面临的问题是实例化和显示BST的元素 . 这是我的代码 Tree Interface: package bst; public interface Tree&lt;D extends Comparable&gt;{ public boolean isempty()...
  • 1 votes
     answers
     views

    可以在这个实例中转换指向成员变量的指针吗?

    我最近一直在刷新/更新我的C知识,学习严格的别名使我有点担心将一种类型的指针转换成另一种类型 . 我知道以下代码示例在我的编译器上实际工作,但我想确保它符合当前标准: #include &lt;iostream&gt; using namespace std; class MyBase { public: virtual void DoSomething() = 0; };...
  • 15 votes
     answers
     views

    施放然后检查或检查然后施放? [重复]

    可能重复:使用CLR中的'as'关键字进行转换 哪种方法被认为是最佳做法? 先投? public string Describe(ICola cola) { var coke = cola as CocaCola; if (coke != null) { string result; // some unique coca-cola on...
  • 3 votes
     answers
     views

    助手铸造功能 - 它是代码味道吗?

    我最近开始使用函数来使我的手指更容易投射,我有一个这样的例子 ((Dictionary&lt;string,string&gt;)value).Add(foo); 并将其转换为一个小小的辅助函数,所以我可以做到这一点 ToDictionary(value).Add(foo); 这是代码味吗? 还有,更简单的例子呢?例如,在我的脚本引擎中,我考虑过制作这样的东西 ((StringVariable...
  • 37 votes
     answers
     views

    我可以检查一个变量是否可以转换为指定的类型吗?

    我试图验证传递的变量是否可以转换为特定类型 . 我已经尝试了以下但是无法让它编译,所以我假设我正在以错误的方式(我是C#的新手) string myType = &quot;System.Int32&quot;; string myValue = &quot;42&quot;; bool canBeCast = false; try { // try to convert the valu...
  • 95 votes
     answers
     views

    'is'与使用空检查的try cast相比

    我注意到Resharper建议我转过身: if (myObj.myProp is MyType) { ... } 进入这个: var myObjRef = myObj.myProp as MyType; if (myObjRef != null) { ... } 为什么会建议这种变化?我已经习惯了Resharper建议优化更改和代码减少更改,但这感觉就像它想要我的单一陈述并将其转换...
  • 8 votes
     answers
     views

    Java整数类型原语是否在转换类型的MAX_INT处“加盖”?

    我试图找出一些非常奇怪的Java行为 . 我有一个涉及double的公式,但是“保证”给出一个整数答案 - 具体来说,是一个无符号的32位整数(唉,Java不能很好) . 不幸的是,我的答案有时不正确 . 最终我发现了这个问题,但对我来说这个行为仍然很奇怪:一个 double 直接转换为 int 似乎被限制在 MAX_INT 为有符号整数,而 double 转换为 long 然后被转换为 int ...

热门问题