草庐IT

不等价

全部标签

C++ 等价于代数数据类型?

假设我有这个Haskell代码:dataRigidBody=RigidBodyVector3Vector3FloatShape--position,velocity,massandshapedataShape=BallFloat--radius|ConvexPolygon[Triangle]用C++表达这一点的最佳方式是什么?structRigid_body{glm::vec3position;glm::vec3velocity;floatmass;*???*shape;};我要问的是,当它可以是两种类型之一时,如何在结构内部表示形状。 最佳答案

C++ 等价于代数数据类型?

假设我有这个Haskell代码:dataRigidBody=RigidBodyVector3Vector3FloatShape--position,velocity,massandshapedataShape=BallFloat--radius|ConvexPolygon[Triangle]用C++表达这一点的最佳方式是什么?structRigid_body{glm::vec3position;glm::vec3velocity;floatmass;*???*shape;};我要问的是,当它可以是两种类型之一时,如何在结构内部表示形状。 最佳答案

c++ - C++中存在量化的等价物?

为了帮助自学C++,我正在研究一个红黑树实现。来自(哪里Haskell,我认为看看我是否可以强制执行propertiesofared-blacktree会很有趣。静态地在C++的类型系统中:Anodeiseitherredorblack.Therootisblack[...]Allleaves(NIL)areblack.Ifanodeisred,thenbothitschildrenareblack.EverypathfromagivennodetoanyofitsdescendantNILnodescontainsthesamenumberofblacknodes.[...]我想出了

c++ - C++中存在量化的等价物?

为了帮助自学C++,我正在研究一个红黑树实现。来自(哪里Haskell,我认为看看我是否可以强制执行propertiesofared-blacktree会很有趣。静态地在C++的类型系统中:Anodeiseitherredorblack.Therootisblack[...]Allleaves(NIL)areblack.Ifanodeisred,thenbothitschildrenareblack.EverypathfromagivennodetoanyofitsdescendantNILnodescontainsthesamenumberofblacknodes.[...]我想出了

c++ - 根据模板参数不等式执行不同的功能

这绝对是一个微不足道的问题,但我不知道该怎么做。我有一个模板函数,比如templatevoidmy_function().现在,我对my_function有两种不同的实现。,如果N则应使用第一个大于,比如说,100,另一个如果N比那个小。我尝试像这样使用SFINAE:template=100>::type>my_function(){//Firstimplementation}template::type>my_function(){//Secondimplementation}但那是两次声明同一个函数。然后我尝试做类似的事情template=100)>my_function();然后

c++ - 根据模板参数不等式执行不同的功能

这绝对是一个微不足道的问题,但我不知道该怎么做。我有一个模板函数,比如templatevoidmy_function().现在,我对my_function有两种不同的实现。,如果N则应使用第一个大于,比如说,100,另一个如果N比那个小。我尝试像这样使用SFINAE:template=100>::type>my_function(){//Firstimplementation}template::type>my_function(){//Secondimplementation}但那是两次声明同一个函数。然后我尝试做类似的事情template=100)>my_function();然后

iphone - Objective-C 中 C++ STL 容器 "pair<T1, T2>"的等价物?

我是Objective-C的新手,所以请不要过多评价我。我想知道:有没有可以在Objective-C中使用的等效C++STL对容器?我想构建一个包含与NSBool关联的NSInteger的数组。我知道我可以使用一个数组,每个条目都是一个具有单个键值的NSDictionary,但我发现它有点矫枉过正。有什么想法吗?谢谢。 最佳答案 您可以编写自己的数据结构对象-对于这样一个简单的情况,这将非常容易:@interfacePair:NSObject{NSIntegerinteger;BOOLboolean;}@property(nonat

iphone - Objective-C 中 C++ STL 容器 "pair<T1, T2>"的等价物?

我是Objective-C的新手,所以请不要过多评价我。我想知道:有没有可以在Objective-C中使用的等效C++STL对容器?我想构建一个包含与NSBool关联的NSInteger的数组。我知道我可以使用一个数组,每个条目都是一个具有单个键值的NSDictionary,但我发现它有点矫枉过正。有什么想法吗?谢谢。 最佳答案 您可以编写自己的数据结构对象-对于这样一个简单的情况,这将非常容易:@interfacePair:NSObject{NSIntegerinteger;BOOLboolean;}@property(nonat

c++ - C++ 中的 Java HashSet 等价物

我很好奇C++中是否有类似于JavaHashSet的东西?IE。一个具有快速外观的数据结构,因为我只会在其上运行.contains(e)。同样,如果您能告诉我如何对您提出的任何数据结构执行.contains(),我将不胜感激。哦,请不要只看c++文档,因为我已经这样做了,发现它们很麻烦。 最佳答案 您可以使用std::unordered_set(标准§23.5.6),其find方法(进行查找)作为O(1)的平均复杂度:#include#includeintmain(){std::unordered_setexample={1,2,3

c++ - C++ 中的 Java HashSet 等价物

我很好奇C++中是否有类似于JavaHashSet的东西?IE。一个具有快速外观的数据结构,因为我只会在其上运行.contains(e)。同样,如果您能告诉我如何对您提出的任何数据结构执行.contains(),我将不胜感激。哦,请不要只看c++文档,因为我已经这样做了,发现它们很麻烦。 最佳答案 您可以使用std::unordered_set(标准§23.5.6),其find方法(进行查找)作为O(1)的平均复杂度:#include#includeintmain(){std::unordered_setexample={1,2,3