@"{0, 1.0, 0, 1.0}"


我希望将上面的字符串转换为这样的结构:

struct MyVector4 {
    CGFloat one;
    CGFloat two;
    CGFloat three;
    CGFloat four;
};
typedef struct MyVector4 MyVector4;


CGRectFromString()仅对CGRect做同样的事情。如何为自己的结构执行此操作?

最佳答案

如果有rect函数,则表示默认情况下该函数不起作用。

您必须创建自己的函数,例如MyVector4FromString。

您可能想知道,您也可以像这样初始化struct对象。

MyVector4 v1 = {1.1, 2.2, 3.3, 4.4};


这是非常简单的C语法。所以我认为您不需要从字符串初始化。
见这里:4.7 — Structs

但是,如果要从服务器或其他函数获取字符串,则必须创建函数来执行此操作。您可以解析字符串并初始化4个浮点值。

该链接将帮助您将字符串分成多个部分:Split a String into an Array

祝一切顺利。

关于ios - CGRectFromString()用于一般结构,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18201422/

10-09 06:36