Xcode无法使用Apple ID登录(Xcode cannot sign in with Apple ID)
最近我想用Xcode存档我的应用程序,然后Xcode说我必须再次输入我的Apple ID和密码。 也许我的登录信息丢失了。 我又试了一次,但总是失败了。
它说我的Apple ID或密码不正确。 这可以证明我的网络环境没问题。
但是,如果输入正确的凭据,它将只响应显示忙碌:
我尝试过VPN来解决这个问题,但没有任何作用。 谁能帮我?
Recently I wanted to archive my App with Xcode, then Xcode said that I must input my Apple ID and password again. Perhaps my login information was lost. I tried again, but it always failed.
If I input a wrong password, I get a correct response:
It said my Apple ID or password is incorrect. That can prove my network environment is okay.
However, if input the right credentials, it would respond nothing but only show busy:
I have tried a VPN to solve this problem but nothing works. Who can help me?
原文:https://stackoverflow.com/questions/33929561
最满意答案
我怀疑有几个因素导致这个未定义,但我们只需要一个:
[C++11: 3.8/1]:
[..] 类型T
对象的生命周期结束时 :
- 如果
T
是具有非平凡析构函数(12.4)的类类型,则析构函数调用将启动,或者- 对象占用的存储器被重用或释放。
所有后续使用都是在使用寿命结束后使用,这是坏事和错误。
关键是每个缓冲区都在重用。
所以,虽然我希望这在实践中起作用,至少对于琐碎的类型(以及某些类),它是未定义的。
以下可能能够为您节省:
[C++11: 3.8/7]:
如果在对象的生命周期结束之后,在重用或释放对象占用的存储之前,在原始对象占用的存储位置创建一个新对象,指向原始对象的指针,引用原始对象的引用,或原始对象的名称将自动引用新对象,并且一旦新对象的生命周期开始,就可以用来操纵新对象对象[...]...除了你没有创建一个新对象。
在这里可能或者可能不值得注意,令人惊讶的是,随后的隐式析构函数调用都是明确定义的:
[C++11: 3.8/8]:
如果程序以静态(3.7.1),线程(3.7.2)或自动(3.7.3)存储持续时间结束T
类型对象的生命周期,如果T
有一个非平凡的析构函数,程序必须确保在隐式析构函数调用发生时,原始类型的对象占用相同的存储位置; 否则程序的行为是不确定的。I suspect there are a few factors rendering this undefined, but we only need one:
[C++11: 3.8/1]:
[..] The lifetime of an object of typeT
ends when:
- if
T
is a class type with a non-trivial destructor (12.4), the destructor call starts, or- the storage which the object occupies is reused or released.
All subsequent use is use after end-of-life, which is bad and wrong.
The key is that each buffer is being reused.
So, although I would expect this to work in practice at least for trivial types (and for some classes), it's undefined.
The following may have been able to save you:
[C++11: 3.8/7]:
If, after the lifetime of an object has ended and before the storage which the object occupied is reused or released, a new object is created at the storage location which the original object occupied, a pointer that pointed to the original object, a reference that referred to the original object, or the name of the original object will automatically refer to the new object and, once the lifetime of the new object has started, can be used to manipulate the new object [..]…except that you are not creating a new object.
It may or may not be worth noting here that, surprisingly, the ensuing implicit destructor calls are both well-defined:
[C++11: 3.8/8]:
If a program ends the lifetime of an object of typeT
with static (3.7.1), thread (3.7.2), or automatic (3.7.3) storage duration and ifT
has a non-trivial destructor, the program must ensure that an object of the original type occupies that same storage location when the implicit destructor call takes place; otherwise the behavior of the program is undefined.
相关问答
更多-
协议缓冲区针对线路上的空间消耗进行了优化,因此对于存档和存储而言,它们非常高效。 但是,复杂的编码代价很高,因此它们的计算量很大,并且C ++ API大量使用动态分配。 另一方面,平面缓冲区针对高效解析和内存中表示进行了优化(例如,在某些情况下提供数据的零拷贝视图)。 这取决于你的用例,哪些方面对你更重要。 Protocol buffers are optimized for space consumption on the wire, so for archival and storage, they a ...
-
OpenGL Vertex和Buffers(OpenGL Vertex and Buffers)[2023-08-12]
正如您所希望的那样,在处理顶点数组对象时,必须使用glEnableVertexAttribArray启用属性数组。 即使您可以为每个属性绑定不同的缓冲区,也不能为每个绘制调用绑定不同的属性或类似。 这意味着VAO指向的所有内容必须存储相同的属性。 当然,您可以忽略VAO给出的某些属性,但这可能会导致效率低下,这可能不是一个好习惯。 这再次意味着,每次使用相同VAO绑定的绘制调用都使用相同的属性。 我认为这是确定是否需要新VAO的最佳方法,首先确定是否需要一组不同的属性。 然后,您可以通过指向索引缓冲区中某个 ... -
我怀疑有几个因素导致这个未定义,但我们只需要一个: [C++11: 3.8/1]: [..] 类型T对象的生命周期结束时 : 如果T是具有非平凡析构函数(12.4)的类类型,则析构函数调用将启动,或者 对象占用的存储器被重用或释放。 所有后续使用都是在使用寿命结束后使用,这是坏事和错误。 关键是每个缓冲区都在重用。 所以,虽然我希望这在实践中起作用,至少对于琐碎的类型(以及某些类),它是未定义的。 以下可能能够为您节省: [C++11: 3.8/7]:如果在对象的生命周期结束之后,在重用或释放对象占用的存储 ...
-
是否有更多的输出缓冲区?(Are there more output buffers?)[2023-07-19]
endl刷新您输出的任何流的输出缓冲区。 例如: cout << ... << endl; // flushes the output buffer of 'cout' cerr << ... << endl; // flushes the output buffer of 'cerr' ofstream file("filename"); file << ... << endl; // flushes the output buffer of 'file' cerr和clog之间的唯一区别是 ... -
是! :) 也就是说,假设您使用的HttpTransport实例是线程安全的,那么拥有共享存储实例应该是线程安全的。 不安全的是跨线程共享请求类本身或其响应,而不提供您提供的额外锁定。 但只要每个线程使用自己的请求类,它就是安全的,实际上建议跨线程共享存储和实例。 注意:我是google-api-java-client项目的所有者 Yes! :) That is, assuming the HttpTransport instance you are using is thread-safe, then h ...
-
当您调用JNI NewDirectByteBuffer(void* address, jlong capacity)将使用以下构造函数创建DirectByteBuffer对象: private DirectByteBuffer(long addr, int cap) { super(-1, 0, cap, cap); address = addr; cleaner = null; att = null; } 请注意, cleaner属性为null。 如果通过ByteBuff ...
-
我看不出有什么理由不会。 如果绝对必要(您知道,如果现有语言都不起作用),那么规范就会记录下来并且非常简单。 可附加使得它对delta也非常有用。 那么:它会起作用吗? 是 但是,如果问题是“我应该吗?” - 如果需要更多信息。 可能是的,可能没有。 I can't see any reason it wouldn't be. If absolutely necessary (you know, if none of the existing languages still work) the spec i ...
-
初始化对象时是否可以放弃放置新的返回值(Is it OK to discard placement new return value when initializing objects)[2022-09-07]
无论是迂腐还是实际,忽略返回值都不行。 从迂腐的角度来看 对于p = new(p) T{...} , p有资格作为指向new-expression创建的对象的指针,该表达式不适用于new(p) T{...} ,尽管事实上价值是一样的。 在后一种情况下,它仅限定为指向已分配存储的指针。 非分配全局分配函数返回其参数而没有隐含的副作用,但是new-expression(placement或not)总是返回指向它创建的对象的指针,即使它恰好使用了该分配函数。 每个cppref关于delete-expression ... -
AFAIK这将冗余地构造/破坏E对象 它会显得如此。 new ed数组已经应用了默认构造函数, delete[]也会为所有元素调用析构函数。 实际上,除了维护size计数器之外, Add()和Remove()方法几乎不添加。 使用placement new时, new char[sizeof(E)*100]是否是分配缓冲区的正确方法? 最好的选择是为你处理所有内存问题的std::allocator 。 使用new的展示位置并自行管理内存需要您了解一些问题(包括); 对准 分配和使用的大小 毁坏 进驻等建筑问 ...
-
如何使用placement new运算符创建对象数组?(How do I create array of objects using placement new operator?)[2022-04-21]
将标准定义的新运算符重写为无用功能的目的是什么? 如果你逐个创建指针,你会想如何存储指针 #includeclass Complex { double r; // Real Part double c; // Complex Part public: Complex() : r(0), c(0) {} Complex (double a, double b): r (a), c (b) {} }; char *buf = new char[size ...