小编Dan*_*ieu的帖子

在Xcode中找不到iostream

我的应用程序中包括ZXing有问题.我收到错误:"找不到iostream文件".我已经完成了ZXing指令中的所有操作,但我无法完成这项工作.我把它包含在.mm文件中.我使用故事板这个项目适用于iOS 6.0这是我得到的错误:

在/Users/adam/Developer/project/project/SecondViewController.mm:11中包含的文件中:zxing/iphone/ZXingWidget/Classes/QRCodeReader.h中包含的文件:10:zxing/iphone/ZXingWidget/Classes中包含的文件/FormatReader.h:22:zxing/cpp/core/src/zxing/common/Counted.h:23:10:致命错误:找不到'iostream'文件

知道我能做些什么才能让这个工作?

编辑:

当我选择编译源文件作为Objcetive-C++项目comiples没有问题,但是因为我被告知这不是神灵魂,因为这可以在以后与app的其他部分出现一些问题.

zxing ios

8
推荐指数
2
解决办法
3万
查看次数

如何使用MVC 6解析System.InvalidOperationException - 相同的模板

我是ASP.NET的新手,最近遇到了这个我在网上找不到的错误(也许是因为最近发布的MVC 6?)

System.InvalidOperationException The following errors occurred with attribute routing information:
Run Code Online (Sandbox Code Playgroud)

错误1:

具有相同名称'GetByIdRoute'的属性路由必须具有相同的模板:操作:'Appname.Web.Controllers.MemberController.GetById' - 模板:'api/Member/{id:int}'操作:'Appname.Web.Controllers .PaymentController.GetById' - 模板:'api/Payment/{id:int}'动作:'Appname.Web.Controllers.PlanController.GetById' - 模板:'api/Plan/{id:int}'

这为startup.cs提供了一个代码片段

Line 73:  
Line 74:              // Add MVC to the request pipeline.
Line 75:              app.UseMvc(routes =>
Line 76:              {
Line 77:                  routes.MapRoute(
Run Code Online (Sandbox Code Playgroud)

第75行突出显示

还有这个:

at Microsoft.AspNet.Mvc.ControllerActionDescriptorBuilder.Build(ApplicationModel application) 
at Microsoft.AspNet.Mvc.Core.ControllerActionDescriptorProvider.GetDescriptors() 
at Microsoft.AspNet.Mvc.Core.ControllerActionDescriptorProvider.OnProvidersExecuting(ActionDescriptorProviderContext context) 
at Microsoft.AspNet.Mvc.Core.DefaultActionDescriptorsCollectionProvider.GetCollection() 
at Microsoft.AspNet.Mvc.Core.DefaultActionDescriptorsCollectionProvider.get_ActionDescriptors() 
at Microsoft.AspNet.Mvc.Routing.AttributeRoute.GetInnerRoute() 
at Microsoft.AspNet.Mvc.Routing.AttributeRoute..ctor(IRouter target, IActionDescriptorsCollectionProvider actionDescriptorsCollectionProvider, IInlineConstraintResolver constraintResolver, ILoggerFactory loggerFactory) 
at Microsoft.AspNet.Mvc.Routing.AttributeRouting.CreateAttributeMegaRoute(IRouter target, IServiceProvider services) 
at Microsoft.AspNet.Builder.BuilderExtensions.UseMvc(IApplicationBuilder app, Action<IRouteBuilder> configureRoutes) 
at Appname.Web.Startup.Configure(IApplicationBuilder app, …
Run Code Online (Sandbox Code Playgroud)

c# asp.net asp.net-mvc asp.net-core-mvc

8
推荐指数
1
解决办法
5297
查看次数

如何使用sigsegv捕获内存读写?

我如何欺骗linux认为内存读/写成功?我正在编写一个C++库,以便所有读/写都被重定向并透明地处理给最终用户.无论何时写入或读取变量,库都需要捕获该请求并将其发送到硬件模拟,硬件模拟将处理来自那里的数据.

请注意,我的库依赖于以下平台:

Linux ubuntu 3.16.0-39-generic#53~14.04.1-Ubuntu SMP x86_64 GNU/Linux

gcc(Ubuntu 4.8.2-19ubuntu1)4.8.2

当前方法:捕获SIGSEGV并增加REG_RIP

我目前的方法涉及使用mmap()和关闭访问来获取内存区域mprotect().我有一个SIGSEGV处理程序来获取包含内存地址的信息,将读/写导出到别处,然后增加上下文REG_RIP.

void handle_sigsegv(int code, siginfo_t *info, void *ctx)
{
    void *addr = info->si_addr;
    ucontext_t *u = (ucontext_t *)ctx;
    int err = u->uc_mcontext.gregs[REG_ERR];
    bool is_write = (err & 0x2);
    // send data read/write to simulation...
    // then continue execution of program by incrementing RIP
    u->uc_mcontext.gregs[REG_RIP] += 6;
}
Run Code Online (Sandbox Code Playgroud)

这适用于非常简单的情况,例如:

int *num_ptr = (int *)nullptr;
*num_ptr = 10;                          // write segfault
Run Code Online (Sandbox Code Playgroud)

但是对于任何稍微复杂一点的东西,我收到一个SIGABRT:

30729非法指令(核心转储)./ $ target

在SIGSEGV处理程序中使用mprotect()

如果我不增加REG_RIP, …

c++ linux memory ubuntu kernel

8
推荐指数
1
解决办法
1090
查看次数

NSCoding兼容是什么意思?

所以我正在阅读本教程,最后我想出了如何使用NSCoding归档对象,以及使用可用的初始化器再次从文件系统初始化它.

// To encode the object in the first place

func encode(with aCoder: NSCoder) {
        aCoder.encode(name, forKey: "name")
}

// To 're-initialize' the object

required init?(coder aDecoder: NSCoder) {
    self.name = aDecoder.decodeObject(forKey: "name") as! String
    super.init()
}
Run Code Online (Sandbox Code Playgroud)

但是,我仍然有点不确定整个过程如何在高水平上运作.请告诉我我的想法不正确.

1)如果你的对象采用NSCoding协议,你可以使用encode(with :)函数让NSCoder对象通过函数传递并执行'encode'方法,传递你的对象的实例属性(它本身就是一个对象) )作为第一个参数,以及表示键​​作为第二个值的字符串.

2)这是一个递归过程,基本上,你传递对象的实例属性(即名称)的原因是为了使THAT属性(它是一个对象)可以发送编码消息,依此类推,依此类推直到它不再到达NSCoding采用者.

3)aDecoder对象也可以对事物进行解码,因此在初始化自定义对象时,您将需要使用可用的初始化程序来解码为您使用的模糊字符串键设置的任何对象.

这是我真的不明白的......

aDecoder对象如何知道哪个单独的对象用于该组键?例如,假设我有10个狗对象实例.当系统通过一个解码器,并在其上使用decodeObject方法,并且它通过键将self.name设置为该解码对象的值时,aDecoder如何知道该狗的名称被保存为"杰克",而不是偶然抓住其中一个狗实例的名字,比如"Jodi"?

换句话说,一旦你对对象的属性进行编码,文件系统如何知道将对象实例A的属性与对象实例B的属性分开,这样,当应用程序被引导备份并且对象A被初始化时,它只是抓住对象A的属性?

谢谢

nscoder swift

8
推荐指数
1
解决办法
439
查看次数

C# 中可以使用没有字段的属性吗?

在 C# 中,可以使用没有字段的属性吗?

编辑以澄清:

private string _name;

public string Name
{
    get { return _name; }
    set { _name value; }
}
Run Code Online (Sandbox Code Playgroud)

看起来它们总是成对的,有没有我们根本不使用该字段的情况?

c# field properties

7
推荐指数
1
解决办法
4027
查看次数

隐藏车身溢出时固定位置移动的元素

我想打开一个超越身体滚动的模态层.为了实现这一点,当显示图层时,我将身体溢出设置为隐藏,并将溢出设置为在模态图层上滚动.在视觉上,一个滚动条取代另一个.

在后台我有一个固定位置和100%宽的顶部栏.当身体溢出被设置为隐藏时,100%宽度div(顶部栏)占据滚动条空间并且其元素向右移动.

如何防止这些元素移动?

我试图计算(javascript)滚动条的宽度,并在设置主体溢出时:隐藏,给右边距:"滚动条宽度"到顶部栏.那没用.

还尝试在顶栏的右端设置一个虚拟div,其中溢出设置为滚动并强制它在打开图层时显示滚动条.我们的想法是用另一个滚动条占用丢失滚动条的空间,仅在顶部容器上.这几乎起作用但创造了1或2px闪烁.还不够好.

jsFiddle这里有基本问题

var body = $('body'),
main = $('.main'),
open_modal = $('.open-modal'),
close_modal = $('.close-modal'),
modal_container = $('.modal-container'),
toggleModal = function() {
    body.toggleClass('body-locked');
    modal_container.toggleClass('dp-block');
};

open_modal.on('click', toggleModal);
close_modal.on('click', toggleModal);
Run Code Online (Sandbox Code Playgroud)

html javascript css css3

7
推荐指数
1
解决办法
5017
查看次数

协议关联类型typealias赋值编译错误

以下代码:

protocol SomeProtocol {
    typealias SomeType = Int // used typealias-assignment

    func someFunc(someVar: SomeType)
}

class SomeClass: SomeProtocol {
    func someFunc(someVar: SomeType) {
        print(someVar)
    }
}
Run Code Online (Sandbox Code Playgroud)

给出编译时错误:

使用未声明类型'SomeType'

例如typealias SomeType = Double,添加SomeClass可以解决错误.

问题是,虽然协议关联类型声明的typealias-assignment部分(可选btw)有什么意义?

protocols swift swift2

7
推荐指数
2
解决办法
4058
查看次数

Ajax在IOS 9.0 Cordova中不起作用

$.ajax({
    type: "GET",
    url: "http://myweb/php",
    success: function (data){
        alert(data);
    },
    error:function(xhr,textStatus,err)
    {
        alert("readyState: " + xhr.readyState);
        alert("responseText: "+ xhr.responseText);
        alert("status: " + xhr.status);
        alert("text status: " + textStatus);
        alert("error: " + err);
    }
});
Run Code Online (Sandbox Code Playgroud)

我得到的结果是:

readyState:0
responseText:""
status:0
text status:error
error:""
Run Code Online (Sandbox Code Playgroud)

我尝试在我的PHP中添加标题,但仍然无法正常工作.在我将xcode更新为7.0并将ios模拟器更新为9.0之前,ajax代码正常工作.

header('Content-Type: application/json');
header('Access-Control-Allow-Origin: *');
Run Code Online (Sandbox Code Playgroud)

ajax jquery cordova

7
推荐指数
2
解决办法
1万
查看次数

NSNumberFormatter:大量显示'k'而不是',000'?

如果可能的话,我想将我的大数字从100,000改为$ 100K.

这是我到目前为止:

let valueFormatter = NSNumberFormatter()
valueFormatter.locale = NSLocale.currentLocale()
valueFormatter.numberStyle = .CurrencyStyle
valueFormatter.maximumFractionDigits = 0
Run Code Online (Sandbox Code Playgroud)

我的问题

使用NSNumberFormatter,我如何输出$ 100K而不是$ 100,000?


我原来的问题:

这是我到目前为止:

self.lineChartView.leftAxis.valueFormatter = NSNumberFormatter()
self.lineChartView.leftAxis.valueFormatter?.locale = NSLocale.currentLocale()
self.lineChartView.leftAxis.valueFormatter?.numberStyle = .CurrencyStyle
self.lineChartView.leftAxis.valueFormatter?.maximumFractionDigits = 0
Run Code Online (Sandbox Code Playgroud)

其中翻译为:

let valueFormatter = NSNumberFormatter()
valueFormatter.locale = NSLocale.currentLocale()
valueFormatter.numberStyle = .CurrencyStyle
valueFormatter.maximumFractionDigits = 0
Run Code Online (Sandbox Code Playgroud)

我的输出如下:

在此输入图像描述

我的问题

使用NSNumberFormatter,我如何输出$ 100K而不是$ 100,000?


更新:

我想提供有关最新情况的背景,观看评论.

func setDollarsData(months: [String], range: Double) {

    var dataSets: [LineChartDataSet] = [LineChartDataSet]()

    var yVals: [ChartDataEntry] = [ChartDataEntry]()
    for var i = 0; i < months.count; i++ …
Run Code Online (Sandbox Code Playgroud)

nsnumberformatter currency-formatting swift ios-charts

7
推荐指数
2
解决办法
2550
查看次数

将当前平台字体传递到SKTypeface?

尝试渲染中文(或其他符号)文本时.SkiSharp将渲染框而不是正确的中文字符.显然,Skia默认使用的字体不支持这些字符.所以我们必须使用支持这些字符的字体来分配我们自己的SKTypeface.

我最初的策略是简单地包含必要的字体来渲染这些字符,这些字符工作正常.但是,当使用自己的字体支持多种不同的符号语言时,应用程序的大小会急剧增加(每个字体大约15 MB).

所以考虑一下这个...默认平台字体似乎支持这些符号字符中的任何一个就好了.我的意思是,默认情况下使用的字体完美呈现按钮,标签和标题.

所以我目前的想法是,为什么我不能只是通过,任何字体进入我的控制SKTypeface?

问题是,我不知道如何获得任何后备或默认字体,以便用它创建一个新的SKTypeface.

我的问题

如何使用渲染这些按钮,标签和标题的相同字体创建SKTypeface?


注意:如果你需要任何东西,从我来帮助你理解问题或解决问题只是让我知道.

c# fonts xamarin.forms skiasharp

7
推荐指数
1
解决办法
710
查看次数