c++ - 在样本外使用 libaws 时返回随机字符

标签 c++ xcode macos amazon-web-services linker

我正在尝试使用 libaws使用 AWS-S3 服务器。 测试应用程序运行完美,但是当我尝试使用这个库做我自己的应用程序时它不起作用。 第一个问题是函数:

AWSConnectionFactory::getInstance()->getVersion();

我返回一个包含库版本的字符串(在本例中为 0.9.3)。 示例应用程序在我打印时显示“0.9.3”,但在我自己的应用程序中它每次都显示不同的字符串(也有不同的大小)。例如:“'K\217\214\377\2212A\244\242]7\340m P%A\240\355@"

我使用的是 mac (10.8) 和 xCode,我正在将库链接为静态库。 有什么建议吗? 链接过程有问题吗?

最佳答案

好的,我找到了答案。

xCode 中有两个配置标志来定义c++ 库的版本。 进入:“Apple LLVM 5.0 - 语言 - C++” -> “C++ 语言方言”和“C++ 标准库”。

当使用 cMake 生成项目时,就像在本例中一样,这些值被设置为“编译器默认值”。 但是,xCode 在生成新项目时设置这些值,并且这些值不是“编译器默认值”。

这种差异会改变字符串定义(或类似的东西),并产生错误的答案。

关于c++ - 在样本外使用 libaws 时返回随机字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21697374/

相关文章:

c++ - ZeroMQ PGM Multicast 不支持来自应用层的回复处理?

iOS Swift 使用 for 循环在 TableView Cell 中添加两个 View

xcode - 发布应用程序时捆绑问题

ios - iTunes 语言代码不支持越南语

ruby - 如何在 Mac OS 上恢复/System/Library/Frameworks/Ruby.framework/Versions/1.8?

c++ - Unix/C++ : Open new terminal and redirect output to it

C++ 表达式模板

c++ - 遍历所有驱动器?

ruby-on-rails - 我无法访问 Rails 控制台

macos - NSCollectionView 拖放示例