接口属性赋值报错StackOverflowException

问题描述

c#接口问题ProcessisterminatedduetoStackOverflowException.求解------------------------------------------------------------------------------------namespacec1{interfaceIinterface{stringI{get;set;}}classProgram:Iinterface{publicstringI{get{return"tom";}set{I=value;}}staticvoidMain(string[]args){Programp=newProgram();p.I="2012aaa";//一写这个就会报错,请问是为什么?}}}

解决方案

本帖最后由 chen3728060 于 2014-09-11 12:13:14 编辑
解决方案二:
string_i="tom";publicstringI{get{return_i;}set{_i=value;}}
解决方案三:
死循环了,出不来
解决方案四:
引用2楼bdmh的回复:

死循环了,出不来

这个get和set不是独立执行的吗?p.I="2012aaa",这一步利用set把数据写入l里面,怎么会出现死循环?为什么得像2楼那样,外面放个_i,再放进去。我对是get和set的执行流程不是太懂,请问能具体说说死循环在哪里吗?
解决方案五:
本帖最后由 bdmh 于 2014-09-11 12:54:09 编辑
解决方案六:
引用4楼bdmh的回复:

set{I=value;}这是具体实现代码,始终访问的是属性I,这样就会始终调用set,直至死掉

哦,明白,就是写入l是调用了set,下一个set里面又是写入l,再调用下下一个set,然后下下一个set又是写入l,死了。明白,谢谢

时间: 2024-08-31 08:32:44

接口属性赋值报错StackOverflowException的相关文章

测试第三方提供的接口,运行报错java.lang.AbstractMethodError如何解决

问题描述 测试第三方提供的接口,运行报错java.lang.AbstractMethodError如何解决 2016-05-24 09:08:12.918::WARN: Nested in org.springframework.web.util.NestedServletException: Handler processing failed; nested exception is java.lang.AbstractMethodError: javax.ws.rs.core.UriBuil

java-Java里重新封装的接口为什么会报错呢?

问题描述 Java里重新封装的接口为什么会报错呢? 小白一枚,在搞数据库这一块时,对数据的连接与操作想写个类封装进去,执行代码时,调用 ResultSet st=db.execQuery("select * from b.TAB_TRAN_LOG fetch first 10 rows only"); while(st.next()) { System.out.println(st.getString("Trn_CODE")); } 时就会报错,感觉是类的Resul

select-存储过程中SELECT赋值报错什么原因?

问题描述 存储过程中SELECT赋值报错什么原因? CREATE OR REPLACE PROCEDURE PROC_DICTABLE_TBYSFL(p_ANetUser VARCHAR)ISvc_DICTABLEID varchar2(36);vc_DICTABLECOLID varchar2(36);vc_DICCOL1 VARCHAR2(20);vc_DICCOL2 VARCHAR2(20);vc_DICCOL3 VARCHAR2(20);vc_DICCOL4 VARCHAR2(20);v

mfc控件-Edit Control控件赋值报错

问题描述 Edit Control控件赋值报错 求问大神,我从数据库取了一条记录出来,想要赋值给EditControl,代码如下: if (pRst->rsEOF) { MessageBox(_T("没有数据")); } else; {MessageBox(_T("有数据")); CString m = (LPCTSTR)_bstr_t(pRst->GetCollect("Book_ID")); AfxMessageBox(m); m

java-掉接口的时候报错anyType怎么解决呀

问题描述 掉接口的时候报错anyType怎么解决呀 No deserializer for {http://www.w3.org/2001/XMLSchema}anyType怎么解决呀 解决方案 检查一下 xml文件的xmlns 看看命名空间是不是有问题

char[]-关于c++中char[ ] 的赋值报错问题

问题描述 关于c++中char[ ] 的赋值报错问题 iemi = pThis->imei; 第一个imei是typedef struct ServerInfoData { char iemi[128]; }ServerInfoData; 第二个imei是在头文件中被定义的private 中的char[128]; 但是在编译的时候就报错 ./Core/ServerManager.cpp:145:32: error: invalid array assignment 这是怎么回事啊 解决方案 楼主

浅谈const变量赋值报错分析_C 语言

从变量到常量的赋值是合法C++的语法约定的, 如从char 到const char顺畅: 但从char **到 const char **编译器就会报错: 复制代码 代码如下: error: invalid conversion from `char**' to `const char**' 示例: int main(int argc, char *argv[]) { char a = '1'; const char b = a; char * a2 = "12345"; const

swing-关于使用DocumentListener监听报错的问题,请高手指教

问题描述 关于使用DocumentListener监听报错的问题,请高手指教 我是java新手,自学java.用java写一个JFrame的窗口,能够读取本地电脑上的文件.设置一个JTextArea文本域,用于显示读取的文件的内容.窗口下方有三个按钮(JButton),分别为"打开"."保存"."另存为".打开窗口时,默认"打开"按钮可以点击,其他两个按钮不能点击.当读取文件到JTextArea文本区后,"保存&qu

C#写COM,VB6.0调试报错:自动化错

问题描述 C#写COM组件,已经注册了,并导出了tlb文件.VB6.0调用,编译生成了exe文件,exe运行调用了C#写COM组件中的接口,没有报错,并可以实现接口功能:为什么VB6.0环境中调试运行,调用C#写COM组件中接口却报错,错误如下:自动化错-2147024894(80070002)-----------------------------请高人帮忙指点下,谢谢!!! 解决方案 解决方案二: mark顶一下解决方案三: 请各位指点下..........解决方案四: 没有这样写过:你为